SQLite - Вставить или обновить
Есть следующая таблица
Код:
id site time count Как вставить знаю: Код:
INSERT INTO TableName (site, time) VALUES ('pupkin.ru', 100) Код:
UPDATE TableName count = '200', WHERE site = 'pupkin.ru' |
Цитата:
Т.к. на лицо селект, анализ ситуации и после этого либо вставка... Либо изменение... |
Типа:
Код:
UPDATE OR INSERT INTO TableName (site, count) VALUES ('mail.ru', 888) MATCHING (site) |
Цитата:
|
Цитата:
http://firebirdsql.su/doku.php?id=update_or_insert |
У нас можно сделать разве что так...
SET mysite="pupkin.ru" &sql( DECLARE myCursor CURSOR FOR SELECT site INTO :site FROM myTable WHERE site=:mysite FOR READ ONLY ) &sql(OPEN myCursor) &sql(FETCH myCursor) IF SQLCODE { &sql(UPDATE SET myTable count = '200', WHERE site = :mysite) } ELSE { &sql(INSERT INTO myTable (site, time) VALUES (:mysite, 100)) } &sql(CLOSE myCursor) :D |
Спасибо ksa за помощь.
Порывшись внимательно в загашниках своих решений нашел то что нужно: Код:
INSERT OR REPLACE INTO TableName(site, count) VALUES ('mail.ru', 999) Код:
INSERT OR REPLACE INTO TableName(site, count) VALUES ('mail.ru', 999), ('pupkin.ru', 666) |
Часовой пояс GMT +3, время: 07:54. |