如果存在两个值,则不插入PHP / SQL

时间:2012-12-18 00:30:12

标签: php sql

如果没有“名称”和“电子邮件”一起存在的条目,我只想插入。

如果“name”存在不同的电子邮件或反之亦然,那就没关系。

mysql_query("INSERT INTO list (name,email) VALUES ('$name','$email') ");

我希望在一个SQL语句中完成此操作以获得更好的性能。

4 个答案:

答案 0 :(得分:1)

将您的主键设为(名称,电子邮件)。

答案 1 :(得分:1)

将列(名称,电子邮件)作为复合主键并使用ON DUPLICATE KEY UPDATE来防止php错误。

答案 2 :(得分:1)

如果您不能将[name,email]作为主键,请将其设置为唯一约束。这样就不会插入两个值匹配的记录。

答案 3 :(得分:1)

在名称和电子邮件上有一个主键,然后执行以下操作:

REPLACE INTO list (name,email) VALUES ('$name','$email')

replace与insert相同,除非值已存在,否则将覆盖它们。