查询特定列的sqlite

时间:2013-07-02 15:07:10

标签: android sqlite cursor

我尝试查询特定列中的所有数据但导致错误“确保在访问数据之前正确初始化游标”。这段代码有什么问题谢谢。

    public List<String> getAllItemName(){
    String[] column = new String[]{Pro_ID, Pro_Name, Pro_Price, Pro_Description, Pro_Date};
    Cursor c= ourDatabase.rawQuery("SELECT " + Pro_Name + " From "+ TABLE_NAME , null);

    List<String> lst = new ArrayList<String>();
     if (c.moveToFirst()) {
         do {
             lst.add(c.getString(1));
                              String name = c.getString(1);
                              Log.v(name,name + ("   name"));
         } while (c.moveToNext());
     }

     return lst;

}

2 个答案:

答案 0 :(得分:3)

尝试使用此代替c.getString(1):

c.getString(c.getColumnIndex(Pro_Name))

答案 1 :(得分:2)

光标索引为0。第一列对应于:c.getString(0)

您可以使用getColumnIndex(columnName)

获取列的索引