gpt4 book ai didi

java - 如何在 SQLite Android 中不存在的地方插入一个值

转载 作者:行者123 更新时间:2023-11-30 02:23:20 25 4
gpt4 key购买 nike

我只想在表中不存在值时将值插入表中。

 String CREATETABLE = "CREATE TABLE contacts ( " +
"id INTEGER PRIMARY KEY AUTOINCREMENT, " +
"name TEXT, "+
"phone TEXT )";

这是我创建表格的代码,我使用了 UNIQUE(phone),但它不起作用。

要添加新联系人,我正在使用此代码:

 ContentValues values = new ContentValues();
values.put("name", contact.getName()); // get title
values.put("phone", contact.getNumero()); // get author
// 3. insert
db.insert("contacts", // table
null, //nullColumnHack
values);

最佳答案

我不认为有一种方法可以在不先检索行的情况下做到这一点。您查询数据库以查找该特定联系人(您必须指定至少一列是唯一的,或者任何列的组合为主键)否则您将如何处理两个同名的人?

所以您查询并搜索所需的人,如果找到它,请检查该列是否为空并且 a) 如果是则插入,b) 如果不是则忽略。如果查询没有找到任何人,则不能直接插入。

关于唯一约束,是这样的:

 String CREATETABLE = "CREATE TABLE contacts ( " +
"id INTEGER PRIMARY KEY AUTOINCREMENT, " +
"name TEXT, " +
"phone TEXT UNIQUE)";

关于java - 如何在 SQLite Android 中不存在的地方插入一个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28160110/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com