Android 查询特定列的sqlite
我试图查询特定列中的所有数据,但导致错误“确保在访问数据之前正确初始化游标”。这个代码有什么问题吗?谢谢Android 查询特定列的sqlite,android,sqlite,cursor,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 +
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;
}
public List getAllItemName(){
String[]column=新字符串[]{Pro_ID,Pro_Name,Pro_Price,Pro_Description,Pro_Date};
游标c=ourDatabase.rawQuery(“从“+表名称,null”中选择“+Pro\u名称+”);
List lst=new ArrayList();
if(c.moveToFirst()){
做{
lst.add(c.getString(1));
String name=c.getString(1);
Log.v(名称,名称+(“名称”);
}而(c.moveToNext());
}
返回lst;
}
请尝试此方法,而不是c.getString(1):
请尝试此操作,而不是c.getString(1):
游标索引基于0。第一列对应于:
c.getString(0)
您可以使用
getColumnIndex(columnName)
获取列的索引。光标索引基于0。第一列对应于:c.getString(0)
您可以使用getColumnIndex(columnName)
c.getString(c.getColumnIndex(Pro_Name))