- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我正在使用 SQLiteDatabase.CONFLICT_IGNORE 调用 insertWithOnConflict。但是,当发生冲突时,将返回“-1”而不是现有行的 ID。我该如何纠正这个问题?
创建表:
编辑:
String CREATE_CATEGORY_TABLE = "CREATE TABLE "+TABLE_CATEGORY+"(" +
BaseColumns._ID+" INTEGER PRIMARY KEY AUTOINCREMENT, "+
KEY_CATEGORY_NAME+" TEXT UNIQUE" +
")";
db.execSQL(CREATE_CATEGORY_TABLE);
插入语句:
ContentValues values = new ContentValues();
values.put(KEY_CATEGORY_NAME, name);
int catID = (int) db.insertWithOnConflict(TABLE_CATEGORY, null, values, SQLiteDatabase.CONFLICT_IGNORE);
最佳答案
insertWithOnConflict,使用 SQLiteDatabase.CONFLICT_IGNORE 不能按预期工作,应该完全避免,根据这个问题:
https://code.google.com/p/android/issues/detail?id=13045
关于安卓:SQLite - insertWithOnConflict,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12361863/
我正在重构我的代码并将所有 insert 语句替换为 insert or replace 而我发现以下方法使用 db.insert() 而不是准备好的语句: public static void in
我在 Android/SQLite 中使用 insertWithOnConflict 函数来插入可能已经存在于数据库中的值。根据 Android 文档,如果该值存在,将返回主键: Returns th
我正在使用 SQLiteDatabase.CONFLICT_IGNORE 调用 insertWithOnConflict。但是,当发生冲突时,将返回“-1”而不是现有行的 ID。我该如何纠正这个问题?
我试图了解 SQLiteDatabase.insertWithOnConflict 的返回值。 我的代码是这样的: long result = db.insertWithOnConflict(
我需要插入或更新,我找到了 SQLiteDatabase 的 insertWithOnConflict 方法,但我不知道它如何检查该条目是否已存在。 理论上我需要一个“Where”参数来检查某个 ID
是否有一些简单的方法(比建立自己的查询更容易),如何包含 SQLiteDatabase.insertWithOnConflict(); 从 v7 开始在 Android API 中? 据我所知,这是从
我有一个 SQLite 表: CREATE TABLE regions (_id INTEGER PRIMARY KEY, name TEXT, UNIQUE(name)); 还有一些安卓代码: Va
在我的sqlite数据库中,我在应用程序中使用了insertWithOnConflict方法来忽略我的sqlite数据库inn android应用程序中的重复数据条目。但我不知道它在我的代码中不起作用
问题背景:我有两个表,其中主键是文本字段。 当我对相同的数据重复使用 SQLiteDatabase.insertWithOnConflict(myTable, null, myValues, SQLi
我是一名优秀的程序员,十分优秀!