@nikita_chiru

Как сравнить строки в базе данных?

Как сравнить строки в базе данных ?
и как написать , если строка с данным текстом уже есть , то ничего не делать , а если нет совпадений создавать новую строку
public class DBHelper extends SQLiteOpenHelper{

public static final int DATABASE_VERSION = 1;
public static final String DATABASE_NAME = "contactDb";
public static final String TABLE_CONTACTS = "contacts";

public static final String KEY_ID = "_id";
public static final String KEY_NAME = "name";
public static final String KEY_MAIL = "mail";

public DBHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}

@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("create table " + TABLE_CONTACTS + "(" + KEY_ID
+ " integer primary key," + KEY_NAME + " text," + KEY_MAIL + " text" + ")");

}

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("drop table if exists " + TABLE_CONTACTS);

onCreate(db);

}
}
  • Вопрос задан
  • 227 просмотров
Пригласить эксперта
Ответы на вопрос 2
mbelskiy
@mbelskiy
Software Developer
Добавьте ключевое слово UNIQUE для столбца и всё время делайте insert. Если такая строка уже существует, код просто вернёт ошибку
Ответ написан
@sergiu3dmd
db.insertWithOnConflict(TABLE_NAME, null, cv, SQLiteDatabase.CONFLICT_REPLACE);
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы