Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/311.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/197.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android SQLite:快速插入/更新_Java_Android_Sqlite - Fatal编程技术网

Java Android SQLite:快速插入/更新

Java Android SQLite:快速插入/更新,java,android,sqlite,Java,Android,Sqlite,在我的Android应用程序中,我使用编译语句来快速插入行: insert = db.compileStatement( "INSERT INTO foo (id, aaa, bbb, ccc) " + "VALUES (?,?,?,?)"); 这工作正确且速度相当快。但是,当已经有foo和id时,我收到以下异常: column id is not unique (code 19) 覆盖现有行的正确方法是什么 覆

在我的Android应用程序中,我使用编译语句来快速插入行:

insert = db.compileStatement(
                    "INSERT INTO foo (id, aaa, bbb, ccc) " +
                    "VALUES (?,?,?,?)");
这工作正确且速度相当快。但是,当已经有
foo
id
时,我收到以下异常:

column id is not unique (code 19)
覆盖现有行的正确方法是什么

覆盖现有行的正确方法是什么

指定一个名称,例如

如果插入将导致冲突,则首先删除冲突行,然后插入新行

覆盖现有行的正确方法是什么

指定一个名称,例如


如果插入将导致冲突,则首先删除冲突的行,然后插入新行。

如果要覆盖它,请使用
更新
-语句。如果要覆盖它,请使用
更新
-语句。这会起作用,但要小心!确保它完全符合您的需求。请记住,这将首先“删除”行(如果它存在),然后用新行替换它。这与行更新不同。如果您需要实际更新行但不删除它,那么您可以首先对该表执行一个简单的查询以确定它是否存在,然后执行一个更新(如果存在),否则执行一个插入。这会起作用,但要小心!确保它完全符合您的需求。请记住,这将首先“删除”行(如果它存在),然后用新行替换它。这与行更新不同。如果您需要实际更新该行,但不删除它,那么您可以首先对该表执行简单的查询以确定它是否存在,如果存在,则执行更新,否则执行插入。
INSERT OR REPLACE INTO foo ...