У меня есть три таблицы (Обучение, Личность и посещаемость). Соединение между таблицей; Обучение имеет свои области, одинаковые для человека. И таблица посещаемости имеет только два поля training_id и person_id. Когда человек регистрируется на тренинге, training_id и person_id вставляются в таблицу посещаемости. Хорошо, я могу вставить нового человека. Когда человек, который уже присутствовал на тренинге и хочет обновить себя, таблица (человек) обновляется, но в таблице посещаемости человек снова вставлен. Я хочу, когда человек обновляется, таблица посещаемости не должна вставлять его снова.Нельзя вставлять данные в базу данных, если данные уже доступны в таблице
Я пробовал это;
public void registerToTraining(int training_id) {
DatabaseHelper db = DatabaseHelper.getInstance();
String query = "SELECT * FROM attendance WHERE training_id = "
+ Integer.toString(training_id) + " AND person_id = "
+ Integer.toString(this.getId()) + ";";
db.sqlCommand(query);
if(The query does not return one row or more){
String command = "INSERT INTO attendance (training_id , person_id) VALUES ("
+ Integer.toString(training_id)
+ ", "
+ Integer.toString(this.getId()) + ") ;";
db.sqlCommand(command);
}
Смотрите также http://stackoverflow.com/questions/1105141/sqlite-prevent-duplicates – user2314737