我正在尝试通过Android Studio中的SQLite创建搜索历史记录。 当我尝试使用getCount()从SQLite DB获取信息时, 它一直返回0。
我已检查过终端是否有数据存在。 然而,它显示有数据的结果。 请帮帮我。
public String[][] getResult(){
SQLiteDatabase db = getReadableDatabase();
Cursor cursor = db.rawQuery("SELECT * FROM AlYak_History", null);
Log.d("getCount", valueOf(cursor.getCount()));
String[][] result = new String[cursor.getCount()][];
cursor.moveToFirst();
while(cursor.moveToNext()){
for(int i = 0 ; i < 12 ; i ++){
result[cursor.getPosition()][i] = cursor.getString(i+1);
}
}
cursor.close();
db.close();
return result;
}
答案 0 :(得分:0)
您确定要连接到数据库吗?你的构造函数应该是这样的:
public DatabaseHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
应该是String.valueOf()
而不是valueOf
答案 1 :(得分:0)
这个对我有用
public int getResultCount() {
String countQuery = "SELECT * FROM " + TABLE_NAME;
SQLiteDatabase db = this.getReadableDatabase();
Cursor cursor = db.rawQuery(countQuery, null);
int cnt = cursor.getCount();
cursor.close();
return cnt;
}