android sqlite 使用分享

  1. SQLiteDatabase.openOrCreateDatabase的使用,给予路径的参数必须路径存在,不存在报错

  2. Cursor cursor = _db.rawQuery(sql, null);

if (cursor.moveToFirst())

{

int count = cursor.getColumnCount();

do

{

ArrayList<Object> ar_temp = new ArrayList<Object>();

for (int i = 0; i < count; i++)

{

ar_temp.add(_get_value(cursor, i));

}

}

while (cursor.moveToNext());

}

cursor.close();

使用cursor时先用cursor.moveToFirst()判断是否有查询到东西,使用结束后要cursor.close();关闭

3.对于cursor查询到的返回值个人认为最好是什么类型就按什么类型取出

switch (cursor.getType(columnIndex))

{

case Cursor.FIELD_TYPE_NULL:

return null;

case Cursor.FIELD_TYPE_INTEGER:

return cursor.getInt(columnIndex);

case Cursor.FIELD_TYPE_FLOAT:

return cursor.getDouble(columnIndex);

case Cursor.FIELD_TYPE_STRING:

return cursor.getString(columnIndex);

case Cursor.FIELD_TYPE_BLOB:

return cursor.getBlob(columnIndex);

}

可以用这个方法判断查询值的类型,由于没有double类型所以为了精度更高,在这里float类型都按double取出


你可能感兴趣的:(android,sqlite)