我通过帐户登录时从服务器获取联系信息.我在SQLite中存储这些信息,当用户第二次登录时,我不想再将相同的重复联系人插入到SQLite中.
我试过这样但不起作用
boolean exist= contact_db.CheckItem(entry.getUser());
if(!exist) {
// insert
}else {
// don't insert
}
Run Code Online (Sandbox Code Playgroud)
DB类中的代码
Cursor mCursor = database.query(ContactsDB.TABLE_CONTACTS, allColumns,
ContactsDB.CONTACT_USERID + "= ' " + name +"'" , null, null, null, null);
if (mCursor != null && mCursor.moveToFirst())
return false;
else return true;
Run Code Online (Sandbox Code Playgroud)
将联系人插入数据库时如何避免重复?
最好是UNIQUE使用UNIQUE关键字为该列创建索引.可以找到一个例子,也可以找到here一个更简单的例子here.
创建表后,您必须创建一个UNIQUE INDEXfor行,
CREATE UNIQUE INDEX idx_something ON Table_name
(column_name_1, column_name_2,....);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7067 次 |
| 最近记录: |