#sql #sqlite
#sql #sqlite
Вопрос:
Мой стол выглядит как:
_id, subID, textInput, attribute1, attribute2
Когда я создаю новую запись, она сохраняет 5 строк… все с одним и тем же идентификатором SubID. Если я создам другую запись с тем же идентификатором SubID, это сохранит 5 строк, что даст мне в общей сложности 10 строк для этого идентификатора SubID.
Чего бы я хотел, так это если SubID уже существует, просто перезаписать строки, которые уже есть. Как бы я это сделал?
Ответ №1:
Вы можете использовать INSERT ИЛИ REPLACE, но вам придется поместить уникальный индекс в SubID.
В качестве альтернативы, вы можете запросить таблицу для идентификатора SubID и, если он найден, использовать вместо этого простое ОБНОВЛЕНИЕ. Если не найден, используйте стандартную вставку.
Ответ №2:
Попробуйте INSERT OR REPLACE
команду. Смотрите http://www.sqlite.org/lang_conflict.html подробнее.