Java SQL从列中获取所有行
我想从数据库中获取行数 如何创建一个以int形式返回行数的方法? 这是我得到的,但它只返回数字1Java SQL从列中获取所有行,java,sql,Java,Sql,我想从数据库中获取行数 如何创建一个以int形式返回行数的方法? 这是我得到的,但它只返回数字1 public int getAllId() { SQLiteDatabase db = this.getWritableDatabase(); int x=0; String where = null; Cursor c = db.rawQuery("SELECT COUNT (*) FROM " + TABLE_PRODUCTS, null); w
public int getAllId() {
SQLiteDatabase db = this.getWritableDatabase();
int x=0;
String where = null;
Cursor c = db.rawQuery("SELECT COUNT (*) FROM " + TABLE_PRODUCTS, null);
while (c.isAfterLast() == false) {
c.moveToNext();
}
db.close();
return c.getCount();
如果您使用的是没有任何库的简单JDBC,那么您应该能够从结果集中获得行数 不久前,我使用了两种方法: 一, 二, 但作为警告,我只在oracle和mysql数据库上使用过这个。此外,如果连接是ResultSet.TYPE_FORWARD_ONLY,则您将无法返回 您可以从中阅读有关结果集的更多信息
希望这有帮助:)多亏了 下面是我想到的代码:
public int getRowCount() throws Exception {
SQLiteDatabase db = this.getWritableDatabase();
Cursor mCount= db.rawQuery("SELECT COUNT (*) FROM " + TABLE_PRODUCTS,
null);
mCount.moveToFirst();
int rows= mCount.getInt(0);
mCount.close();
return rows;
}
通过在方法内部执行MYTABLE中的
选择COUNT(*)。展示一些主动性,有很多关于这些东西的信息。是的,我在这里查看了很多示例和问题,但我不能将其应用到我的代码中,因为我对Java还是一个新手,问题太广泛了。我们看不到您的代码,也看不到您到目前为止做了什么。请考虑更新你的问题。更新,如果下注,请评论…<代码> PraseRealStay.ExtUpUpDeDedate()<代码>返回行数。为什么不在ResultSet
中获取结果,并在期间迭代,直到ResultSet.next()
如果ResultSet!=空
这有意义吗
int rowcount = 0;
while (rs.next()) {
// more processing here
rowCount++;
}
public int getRowCount() throws Exception {
SQLiteDatabase db = this.getWritableDatabase();
Cursor mCount= db.rawQuery("SELECT COUNT (*) FROM " + TABLE_PRODUCTS,
null);
mCount.moveToFirst();
int rows= mCount.getInt(0);
mCount.close();
return rows;
}