【发布时间】:2017-09-03 10:35:21
【问题描述】:
这是我的查询:
IF NOT EXISTS (SELECT *
FROM teovecerdi
WHERE LocationName = 'Frankfurt'
AND StartDate = '14/02/2015'
AND EndDate = '17/02/2015'
AND Price = '2700')
INSERT INTO teovecerdi(LocationName, StartDate, EndDate, Price)
VALUES(?,?,?,?)
你能告诉我它有什么问题吗?我也尝试过 BEGIN 和 END ,但它仍然给我一个错误。
编辑:我正确处理了参数。
【问题讨论】:
-
您可能只想在这些字段上创建一个唯一索引,然后执行
INSERT INTO ... ON DUPLICATE KEY UPDATE Price=Price或INSERT IGNORE ... -
NOT EXISTS查询中的值是否与您尝试插入的值相同?如果它们包含表的唯一索引,则可以使用INSERT IGNORE。
标签: mysql sql if-statement select exists