我正在尝试创建更强大的MySQL
查询和学习过程中。目前我很难掌握ON DUPLICATE KEY
的语法和可能的用法。有条件的mySQL语句。如果是真的更新,如果是假INSERT
我有一个INSERT
查询,我想INSERT
只有当没有记录与ID
和名称相同,否则UPDATE
。 ID
和名称不是UNIQUE
,但ID
已编入索引。 ID
不是UNIQUE
,因为它引用另一个表中的另一条记录,并且我想在此表中引用另一个表中的一条特定记录的多条记录。
如何才能使用ON DUPLICATE KEY
到INSERT
只有当没有记录与该ID
和名称已设置其他UPDATE
该记录?
我可以很容易地与一对夫妇的QUERIES
实现这一点,然后有PHP
做IF
ELSE
一部分,但我想知道如何LIMIT
的QUERIES
我发送到MySQL
量。
获取此错误:您的SQL语法有错误;检查与您的MySQL服务器版本对应的手册,以便在第1行的IF(SELECT * FROM flavours WHERE id ='1'和Name ='BerryBlue')IS NULL THEN'附近使用正确的语法 –
@Vitaliy - I'我更新了我的代码。看看能否帮助你。如果不是,请尝试将INSERT语句放在与IF语句相同的行上。 – 2011-02-09 01:38:44
已经试过了。也扭转了逻辑,仍然给我一个语法错误。我甚至用没有运气的静态值替换了所有的PHP变量。 –