Android 从SQLite获取行计数
我试图从sqlite中获取android应用程序的行数,但由于某些原因,它总是返回零,即使我的数据库中有足够多的行 代码如下:Android 从SQLite获取行计数,android,sqlite,count,Android,Sqlite,Count,我试图从sqlite中获取android应用程序的行数,但由于某些原因,它总是返回零,即使我的数据库中有足够多的行 代码如下: DatabaseConnector database1 = new DatabaseConnector(getApplicationContext()); int TotalPosts = database1.getIds(); public int getIds() { String selectQuery = "SELECT
DatabaseConnector database1 = new DatabaseConnector(getApplicationContext());
int TotalPosts = database1.getIds();
public int getIds()
{
String selectQuery = "SELECT COUNT(Pst_id) AS CountTotal FROM student_posts";
SQLiteDatabase database = this.dbOpenHelper.getReadableDatabase();
Cursor c = database.rawQuery(selectQuery, null);
count = c.getColumnIndex("CountTotal");
return count;
}
谢谢。试试下面的方法:
public int getIds()
{
String selectQuery = "SELECT Pst_id FROM student_posts";
SQLiteDatabase database = this.dbOpenHelper.getReadableDatabase();
Cursor c = database.rawQuery(selectQuery, null);
c.moveToFirst();
int total = c.getCount();
c.close();
return total;
}
尝试c.getCount()
希望这有帮助。您正在为count变量分配一个列索引。正如@brianestey所说,
getColumnIndex
返回列在返回数据集中的位置,而不是该列中的值。在您的情况下,由于您只查询单个值,即,COUNT
,您将只得到一列,其索引将始终为0。非常感谢您的帮助:)只需再等待6分钟,即可接受此答案:(返回前不要忘了关闭光标!