开发者社区> 问答> 正文

如何避免插入重复的数据到SQLite数据库中?

a123456678 2016-07-18 14:24:34 989

当通过账号登陆时,我从服务器中获取联系信息,我把这些信息储存在SQLite中,当用户第二次登录时,我不希望再次插入 SQLite 数据库中重复的联系信息。
我使用的下面的代码,但是没有成功:
boolean exist= contact_db.CheckItem(entry.getUser());
if(!exist) {
// insert
}else {
// don't insert
}
DB class:
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;

如何避免第二次登录时,插入重复的数据到SQLite数据库中?

数据库 数据库管理
分享到
取消 提交回答
全部回答(1)
  • a123456678
    2019-07-17 19:57:51

    新建唯一索引: CREATE UNIQUE INDEX mycolumn_index ON mytable (myclumn);
    第二步:调用replace into语句 (本句是存在则更新意思)
    如果以上不是你想要的,还可以看看,客户端软件有没有窗口的生命周期,第一次登陆时触发的事件

    0 0
+ 订阅

分享数据库前沿,解构实战干货,推动数据库技术变革

推荐文章
相似问题
推荐课程