SQLite';如果不存在';语法错误

SQLite';如果不存在';语法错误,sql,sqlite,Sql,Sqlite,解决这个错误的其他问题似乎都不适合我。我的问题是: IF NOT EXISTS (SELECT 1 FROM Configuration WHERE key = 'CookieCount') BEGIN INSERT INTO Configuration (key, value) VALUES ('CookieCount', '0') END 我的错误消息是:“无法准备语句(1靠近“IF”:语法错误)” 我在博士后工作: 但这在SQLite中不起作用,我需要它同时使用这两种语言。SQL

解决这个错误的其他问题似乎都不适合我。我的问题是:

IF NOT EXISTS (SELECT 1 FROM Configuration WHERE key = 'CookieCount')
BEGIN
  INSERT INTO Configuration (key, value)
  VALUES ('CookieCount', '0')
END
我的错误消息是:“无法准备语句(1靠近“IF”:语法错误)”

我在博士后工作:
但这在SQLite中不起作用,我需要它同时使用这两种语言。

SQLite根本没有这样的IF操作符。最近的情况是,但这并不适用于你的情况


中的答案适用于此处,作为insert if not exists语句。

尝试使用类似于以下if语句的语句:

INSERT INTO Configuration (key, value) 
SELECT 'CookieCount', '0' 
WHERE NOT EXISTS(SELECT 1 FROM Configuration WHERE key = 'CookieCount');

SQLite没有像
IF
BEGIN
这样的过程化SQL系统。不过,您可能可以使用
INSERT。。。选择
,其中有一个检查该键是否存在的条件。问题中显示的代码也不会在Postgres中运行(并且它不是SQLFIDLE中的代码)。