如何检查SQLite表中是否已存在具有特定值的行?
我的表有一个String“name”列 . 我想查看另一个表行中是否已存在特定名称 . 我还在学习SQLite,但我认为可以用光标做到这一点 .
如果 name 列上有UNIQUE约束,则可以使用INSERT OR IGNORE(或Android中的insertWithOnConflict())仅在尚不存在的情况下插入行 .
name
在一般情况下,要检查是否存在行,您必须运行SELECT查询 . 但是,有一个helper function用于计算行:
boolean nameExists(String name) { SQLiteDatabase db = ...; long count = DatabaseUtils.queryNumEntries(db, "MyTable", "name = ?", new String[] { name }); return count > 0; }
1 回答
如果
name
列上有UNIQUE约束,则可以使用INSERT OR IGNORE(或Android中的insertWithOnConflict())仅在尚不存在的情况下插入行 .在一般情况下,要检查是否存在行,您必须运行SELECT查询 . 但是,有一个helper function用于计算行: