从sqlite数据库错误中检索blob内容

时间:2011-02-05 14:32:14

标签: android sqlite

我有一张桌子,其中我的第二个字段是blob类型。 现在,当我尝试访问此字段的内容时,我收到以下错误。

CODE

SQLiteDatabase sb= openOrCreateDatabase("/data/data/helios.maggi/Recipe.db",SQLiteDatabase.CREATE_IF_NECESSARY,null);
if(sb.isOpen())
   Log.i("mytag","the database is open "+sb.getPath());
   //sb.execSQL("drop database Recipe");
   Cursor c = sb.rawQuery("SELECT * FROM RecipeDetails", null);
   byte []myarray = c.getBlob(c.getColumnIndex("recipeimage"));

错误

  

02-06 19:54:16.626:ERROR / AndroidRuntime(1812):引起:android.database.CursorIndexOutOfBoundsException:请求索引-1,大小为4

导致此错误的原因是什么?我已经验证了字段recipeimage的内容是blob,这是因为我从设备中提取了表并自己检查了字段名称。第二个字段是blob类型,有4个条目。

1 个答案:

答案 0 :(得分:1)

应用此

Cursor c=db.query (String table, String[] columns, String selection, String[] selectionArgs, String groupBy, String having, String orderBy) 

示例

从学生表中获取学生的姓名以应用此查询。

Cursor c=db.query ("student",null,"name like 'jon'",null,null,null,null);