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, время: 18:53. |