如果该行尚不存在,我试图插入一行。我已经跟进了不同的教程,这是我到目前为止所做的:
INSERT INTO UserTable (id,Email, userid) VALUES
('"2424" + "','" + email + "','" + "4424"')
WHERE NOT EXISTS (Select *
from UserTable
where userid='"4424" + "' AND Email='" + email + "')
如果表格已经不包含电子邮件变量和用户ID" 4424",则基本上尝试插入上述行。这显示了' WHERE'条款。
我做错了什么?
P.S:我应该对它们进行参数化,但这只是为了澄清查询
答案 0 :(得分:4)
那是因为你不能在WHERE
语句中使用INSERT
子句。而是使用INSERT INTO ... SELECT FROM
构造像
INSERT INTO UserTable (id,Email, userid)
SELECT 2424, email, 4424 FROM tbl1
WHERE NOT EXISTS (Select *
from UserTable
where userid='"4424" + "' AND Email='" + email + "');