如何在php MySQL中插入“如果不存在”

我开始用google搜索,并找到了这篇谈论互斥表的文章。

我有一张约有1400万条记录的表格。 如果我想以相同的格式添加更多的数据,有没有办法确保我想插入的记录不存在,而不使用一对查询(即,一个查询来检查,一个要插入的结果集是空)?

一个字段上的唯一约束是否保证插入将会失败,如果它已经在那里?

似乎只有一个约束,当我通过php发布插入时,脚本就会呱呱叫。


一个字段上的唯一约束是否保证插入将会失败,如果它已经在那里?

插入新数据时会执行唯一约束。 如果您尝试将数据插入已有数据的表中,则应该得到如下所示的错误:

Error Code: 1062. Duplicate entry 'john-doe-(408)-999-9765' for key 'idx_name_phone'

您可以使用INSERT IGNORE来简单地忽略重复行上的插入(错误本质上转为警告),或使用ON DUPLICATE KEY UPDATE更新行而不是插入新行。 看到这个职位了解更多信息。

链接地址: http://www.djcxy.com/p/58673.html

上一篇: How to 'insert if not exists' in php MySQL

下一篇: MySQL: Insert record if not exists in table