Я пробовал INSERT OR REPLACE INTO
, но он не сохраняет идентификатор строки, когда он заменяет запись, чтобы обновить ее. Другой вариант - сделать это в два этапа: INSERT OR IGNORE INTO
, затем UPDATE
, но я бы предпочел одношаговое решение. Поэтому мне интересно, имеет ли SQLite что-то вроде ключевого слова MERGE
или других простых решений?SQLite: обновить запись, если существует, иначе вставить ее?
0
A
ответ
1
Нет, SQLite не поддерживает MERGE
или upsert.
Вы можете использовать свое двухэтапное решение, но то, что вы, вероятно, действительно хотите, для ROWID
должно быть столбцом первого класса в вашей таблице. Если вы объявите столбец как INTEGER PRIMARY KEY
, это будет псевдоним для ROWID
. Тогда INSERT OR REPLACE
будет работать нормально.
Смежные вопросы
- 1. Вставить, если не существует, иначе обновить запись
- 2. создайте запись mysql, если она не существует, иначе обновите ее.
- 3. SQL Update, если уже существует, иначе вставить
- 4. Update, если существует, иначе вставить
- 5. Как обновить запись, если она существует, иначе вставить новую запись в MySQL
- 6. UPDATE, если идентификатор существует, иначе ВСТАВИТЬ (ODBC)
- 7. Вставить SQLite запись, если не существует, то с ограничением уникальности
- 8. если существует, то обновление, иначе вставить новую запись
- 9. Как обновить, если существует, иначе вставить в php?
- 10. Как обновить, если существует, иначе вставить новый документ?
- 11. Обновить строку, если идентификатор существует еще. Вставить
- 12. Как увеличить количество столбца количества, если запись существует, иначе вставить запись?
- 13. SQLite test, если существует запись
- 14. Обновить запись, если она существует
- 15. Pandas: Обновить запись, если существует
- 16. Посмотрите, существует ли учетная запись в SFDC, иначе создайте ее?
- 17. SQLite Если существует Update или Вставить
- 18. SQL Вставить запись, если ее нет
- 19. Вставить новую запись, если запись не существует, дублировать запись, если запись существует
- 20. PHP/MySQL: Вставить запись, если не существует
- 21. Hibernate Вставить, если запись не существует
- 22. Идентификатор возврата, если запись существует, иначе Вставка и возврат ID
- 23. Обновить запись, если не удалось, вставить запись, а затем обновить
- 24. Если Дата сегодня, «обновить» базу данных, иначе «вставить в»
- 25. sqlite & flex - вставить, если не существует?
- 26. MySQL обновление, если два значения уже существует, иначе вставить
- 27. Обновление, если существует, иначе вставить новую запись, все на основе флажков
- 28. Запись в sqlite Android, если не существует
- 29. Обновить или иначе создать запись в таблице
- 30. PyMongo вставить запись, если не существует