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