public class BookDbHelper extends SQLiteOpenHelper {
public BookDbHelper(Context context) {
super(context, BasicDBAppConst.BOOKDB_NAME, null, BasicDBAppConst.BOOKDB_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("CREATE TABLE IF NOT EXISTS t_person (personid integer primary key " +
"autoincrement, name varchar(20), age INTEGER)");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
}
}
dao语句对比 (原生api和sql语句使用对比 )
原生api
public class PersonDao implements IPersonDao {
private static PersonDao MDAO = null;
private BookDbHelper mBookDbHelper;
private PersonDao() {
}
private PersonDao(Context context) {
mBookDbHelper = new BookDbHelper(context);
}
public static PersonDao getDao(Context context) {
if (MDAO == null) {
synchronized (PersonDao.class) {
if (MDAO == null) {
MDAO = new PersonDao(context);
}
}
}
return MDAO;
}
@Override
public boolean insert(PersonInfo info) {
SQLiteDatabase database = mBookDbHelper.getWritableDatabase();
ContentValues contentValues = new ContentValues();
contentValues.put(PersonInfo.COLOUMN_PERSON_NAME, info.getName());
contentValues.put(PersonInfo.COLOUMN_PERSON_AGE, info.getAge());
long r = database.insert(PersonInfo.TABNAME, null, contentValues);
LoggerUtils.loge(" insert r = " + r);
return r == -1;
}
@Override
public List<PersonInfo> query() {
SQLiteDatabase database = mBookDbHelper.getReadableDatabase();
List<PersonInfo> list = new ArrayList<>();
Cursor cursor = database.query(PersonInfo.TABNAME, null, null, null, null, null, null);
PersonInfo personInfo = null;
while (cursor.moveToNext()) {
personInfo = new PersonInfo();
personInfo.setId(cursor.getInt(cursor.getColumnIndex(PersonInfo.COLOUMN_PERSON_ID)));
personInfo.setName(cursor.getString(cursor.getColumnIndex(PersonInfo
.COLOUMN_PERSON_NAME)));
personInfo.setAge(cursor.getInt(cursor.getColumnIndex(PersonInfo.COLOUMN_PERSON_AGE)));
list.add(personInfo);
}
return list;
}
}
sql语句
public class PersonDao implements IPersonDao {
private static PersonDao MDAO = null;
private BookDbHelper mBookDbHelper;
private PersonDao() {
}
private PersonDao(Context context) {
mBookDbHelper = new BookDbHelper(context);
}
public static PersonDao getDao(Context context) {
if (MDAO == null) {
synchronized (PersonDao.class) {
if (MDAO == null) {
MDAO = new PersonDao(context);
}
}
}
return MDAO;
}
@Override
public boolean insert(PersonInfo info) {
SQLiteDatabase database = mBookDbHelper.getWritableDatabase();
int r = 0;
try {
database.execSQL("insert into " + PersonInfo.TABNAME + " ( " + PersonInfo
.COLOUMN_PERSON_NAME + " , " +
PersonInfo.COLOUMN_PERSON_AGE + ") values ( ?,? ) ", new String[]{info
.getName(), info.getAge() + ""});
} catch (SQLException e) {
e.printStackTrace();
r = -1;
}
return r == -1;
}
@Override
public List<PersonInfo> query() {
SQLiteDatabase database = mBookDbHelper.getReadableDatabase();
List<PersonInfo> list = new ArrayList<>();
String sql = "select * from " + PersonInfo.TABNAME;
Cursor cursor = database.rawQuery(sql, null);
PersonInfo personInfo = null;
while (cursor.moveToNext()) {
personInfo = new PersonInfo();
personInfo.setId(cursor.getInt(cursor.getColumnIndex(PersonInfo.COLOUMN_PERSON_ID)));
personInfo.setName(cursor.getString(cursor.getColumnIndex(PersonInfo
.COLOUMN_PERSON_NAME)));
personInfo.setAge(cursor.getInt(cursor.getColumnIndex(PersonInfo.COLOUMN_PERSON_AGE)));
list.add(personInfo);
}
return list;
}
}