Привет!
Есть база данных SQLite
Как составить запрос, чтобы приходящие данные переписывали первую строчку, если она существует, и добавились, если ничего нет?
Т.е была бы всегда только одна строка.
При таком запросе - крэш
достаточно в самой базе replID объявить как primary key , и where в запросе ненужен
достаточно в самой базе replID объявить как primary key , и where в запросе ненужен
replID - первый элемент записи, он и так primary key, но так как вновь приходящие данные имеют разный replIDЮ то существующая запись
не заменяется, а добавляется новая запись
То, что есть в таблице записано с помощью команды
FDQuery.SQL.Text:= 'insert or replace into ' + strData.sName + string(sTable.name) + ' (' + FieldNames + ') values (' + Values + ')'
Я уже все глаза проглядел, но так и не понял как составить запрос
replID - первый элемент записи, он и так primary key, но так как вновь приходящие данные имеют разный replIDЮ то существующая запись
не заменяется, а добавляется новая запись
То, что есть в таблице записано с помощью команды
Я уже все глаза проглядел, но так и не понял как составить запрос
primary key и "первый элемент записи" - это разные вещи
replID должен быть primary key или unique key тогда он идентифицирует строку и insert or update сложит всё правильно - новые добавит, существующие обновит
в схеме таблицы надо указать
По-моему, вы друг друга не понимаете. :)
если ReplID - целое и уникально by design то оно и должно быть primary key
Так как составить зарос, чтобы
1. если в таблице нет записей, то запись добавилась
2. если есть запись, то она обновилась новыми данными
Т.е. запись всегда должна быть одна, но с новыми данными
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Привет!
Есть база данных SQLite
Как составить запрос, чтобы приходящие данные переписывали первую строчку, если она существует, и добавились, если ничего нет?
Т.е была бы всегда только одна строка.
При таком запросе - крэш