首页 文章

检查SQLite表中是否已存在具有值的行

提问于
浏览
0

如何检查SQLite表中是否已存在具有特定值的行?

我的表有一个String“name”列 . 我想查看另一个表行中是否已存在特定名称 . 我还在学习SQLite,但我认为可以用光标做到这一点 .

1 回答

  • 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;
    }
    

相关问题