我正在研究android项目。我为此使用了 sqlite 数据库。我在数据库中有表。我创建了 databasehelper 类。我想计算特定表中的记录数。我怎样才能做到这一点?任何帮助将不胜感激?
问问题
37281 次
6 回答
52
这会更有效率:
int numRows = DatabaseUtils.longForQuery(db, "SELECT COUNT(*) FROM table_name", null);
或者:
int numRows = DatabaseUtils.queryNumEntries(db, "table_name");
于 2012-09-15T15:07:27.500 回答
17
使用SELECT COUNT(*) FROM table_name
查询,然后计算光标的大小..
Cursor 计算大小(游标中的行数)的方法是,
getCount()
返回游标中的行数。
或者:
从DatabaseUtils使用方法queryNumEntries(SQLiteDatabase db, String table)
喜欢,
long numberOfRows = DatabaseUtils.queryNumEntries(db, "table_name");
它返回表中的行数。
于 2012-09-15T10:32:39.490 回答
10
尝试这个。
Cursor c = db.rawQuery("select * from your_table_name",null);
Log.i("Number of Records"," :: "+c.getCount());
编辑: c.getCount()返回特定表的记录数。
于 2012-09-15T10:33:55.803 回答
1
在科特林
fun getFruitTableCount(): Int {
val db = readableDatabase
val numRows = DatabaseUtils.longForQuery(db, "SELECT COUNT(*) FROM " + DBContract.FruitEntry.TABLE_NAME, null).toInt()
return numRows
}
于 2018-08-10T20:08:14.447 回答
0
In db handler class use this method
Kotlin Code :
fun getCount(): Int {
val db = this.readableDatabase
var count= db.rawQuery("SELECT * FROM $TABLE_NAME", null).count
db.close()
return count
}
Then directly call getCount after creating an instance of db handler class
于 2021-07-04T16:04:14.683 回答
0
请试试这个:
在您的 DatabaseHelper.java 中:
public Cursor getYourTableContents() {
SQLiteDatabase db = this.getWritableDatabase();
Cursor data = db.rawQuery("SELECT * FROM " + "Your table name", null);
return data;
}
要获取表中的行数:
Cursor yourCursor = myDB.getYourTableContents();
int i = 0;
while (yourCursor.moveToNext()) {
i += 1;
}
i
您的行数是否为整数。
于 2017-10-30T02:29:31.717 回答