解决此错误的其他任何问题似乎都不适用于我。我的疑问是:
IF NOT EXISTS (SELECT 1 FROM Configuration WHERE key = 'CookieCount')
BEGIN
INSERT INTO Configuration (key, value)
VALUES ('CookieCount', '0')
END
我的错误信息是:“无法准备语句(1”接近“IF”:语法错误)“
我在Postgres工作:http://sqlfiddle.com/#!15/b14ef/2/0 但这在SQLite中不起作用,我需要它与两者一起使用。
答案 0 :(得分:3)
尝试使用类似这样的内容而不是IF语句:
INSERT INTO Configuration (key, value)
SELECT 'CookieCount', '0'
WHERE NOT EXISTS(SELECT 1 FROM Configuration WHERE key = 'CookieCount');
答案 1 :(得分:1)
SQLite根本就没有这样的IF运营商。最近的事情是CASE ...... http://www.sqlite.org/lang_expr.html#case,但这并不适用于你的情况。
"Insert if not exists" statement in SQLite中的答案适用于此处,作为insert-if-not-exists语句。