我无法从 sql 获取所有行数据。
数据库处理程序.java
public HashMap<String, String> getChannelDetails(){
HashMap<String,String> channels = new HashMap<String,String>();
String selectQuery = "SELECT * FROM " + TABLE_CHANNEL;
SQLiteDatabase db = this.getReadableDatabase();
Cursor cursor = db.rawQuery(selectQuery, null);
// looping through all rows and adding to list
if (cursor.moveToFirst()) {
do {
channels.put("title", cursor.getString(1));
channels.put("url", cursor.getString(2));
channels.put("create_at", cursor.getString(3));
} while (cursor.moveToNext());
Log.d("SELECT", channels.toString());
Log.d("Count", Integer.toString(cursor.getCount()));
}
cursor.close();
db.close();
// return channels
return channels;
}
显示结果.java
for(int i = 0; i < 13; i++){
HashMap<String, String> allchannel = db.getChannelDetails();
String id = allchannel.get("id");
String title = allchannel.get("title");
String url = allchannel.get("url");
String date = allchannel.get("created_at");
titles[i] = title;
Toast.makeText(context,titles[i]+" "+url+" "+ date, Toast.LENGTH_SHORT).show();
}
cursor.getCount() 有 13 个,但是输出只重复显示最后一行数据。