如何计算Android中sqlite中的记录数

use*_*798 16 sqlite android

我正在研究android项目.我使用了sqlite数据库.我在数据库中有表.我创建了databasehelper类.我想计算特定表中的记录数.我怎么能实现这个目标?任何帮助将不胜感激?

Nic*_*ury 48

这会更有效:

int numRows = DatabaseUtils.longForQuery(db, "SELECT COUNT(*) FROM table_name", null);
Run Code Online (Sandbox Code Playgroud)

要么:

int numRows = DatabaseUtils.queryNumEntries(db, "table_name");
Run Code Online (Sandbox Code Playgroud)

  • 如果你不将它们转换为(int),它们都不起作用,因为它们返回很长时间. (8认同)

use*_*305 15

使用SELECT COUNT(*) FROM table_name查询和,计算Cursor的大小 ..

从Cursor到count size(游标中的行数)的方法是,

getCount()
Run Code Online (Sandbox Code Playgroud)

返回游标中的行数.

要么:

来自DatabaseUtils的使用方法queryNumEntries(SQLiteDatabase db, String table)

喜欢,

long numberOfRows = DatabaseUtils.queryNumEntries(db, "table_name");

返回表中的行数.

  • 光标是不是总是1 ...你真的不想获取光标中的第一条记录,然后在索引0中查看计数吗? (3认同)

Chi*_*rag 10

试试这个.

Cursor c = db.rawQuery("select * from your_table_name",null);
Log.i("Number of Records"," :: "+c.getCount());
Run Code Online (Sandbox Code Playgroud)

编辑: c.getCount()返回特定表的记录数.