gpt4 book ai didi

java - 从 Android SQLite 数据库获取最大唯一 ID 不起作用

转载 作者:行者123 更新时间:2023-11-30 11:39:54 26 4
gpt4 key购买 nike

我在网上找到了这个代码示例,但我无法让它工作。当它运行时,应用程序崩溃。有什么简单的解决方案吗?

public long getMaxID() {
int id = 0;
final String MY_QUERY = "SELECT MAX(_id) AS _id FROM db_table";
Cursor mCursor = mDb.rawQuery(MY_QUERY, null);

if (mCursor.getCount() > 0) {
mCursor.moveToFirst();
id = mCursor.getInt(mCursor.getColumnIndex(MY_QUERY));
}

return id;
}

我的 logcat 错误似乎是:

10-21 07:48:32.704: E/AndroidRuntime(4023): Caused by: java.lang.IllegalStateException: get field slot from row 0 col -1 failed

最佳答案

您不能对某些查询字符串执行 getColumnIndex,您需要传递列名 _id。所以不是

 id = mCursor.getInt(mCursor.getColumnIndex(MY_QUERY));

使用

 id = mCursor.getInt(mCursor.getColumnIndex("_id"));

关于java - 从 Android SQLite 数据库获取最大唯一 ID 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12995980/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com