Reputation: 22493
I am getting contact information from server when i login through account. i am storing those information in SQLite, when user login second time, I don't want to same duplicate contact inserting again into SQLite.
i tried like this but not working
boolean exist= contact_db.CheckItem(entry.getUser());
if(!exist) {
// insert
}else {
// don't insert
}
code in 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;
How to avoid the duplicates while inserting the contacts into data base?
Upvotes: 3
Views: 7114
Reputation: 67286
Better would be to create a UNIQUE
index for that column using UNIQUE
Keyword. An example can be found here
and also a simpler one can be found here
.
After creating table you have to create a UNIQUE INDEX
for row as,
CREATE UNIQUE INDEX idx_something ON Table_name
(column_name_1, column_name_2,....);
Upvotes: 6
Reputation: 7110
Check the database for the information. If the data is present in the database don't do anything if not insert the information into the database
Upvotes: 2