如何禁用MySQL的错误?

时间:2013-06-18 12:15:26

标签: php mysql

我的数据库中有一个表,其中包含我设置的primary_key的字符串。在添加之前,我需要经常检查该表中是否存在大约1000个“项目”,因为不能有任何重复项。结果是每个项目有2个查询,或总共2000个查询,这是1-2秒的额外加载时间。

如果我尝试插入新行而不检查重复项,则不会插入,这很好,但是mysql会返回错误,这会导致我的服务崩溃。

我的问题:

  1. 我可以关闭这些错误吗?
  2. 是否有更好的方法来防止插入重复项而不是进行额外查询?

2 个答案:

答案 0 :(得分:5)

  

mysql返回错误,导致我的服务崩溃。

实际上你自己的代码会崩溃你的服务,因为mysql错误不会导致崩溃。

  

是否有更好的方法可以防止插入重复项

INSERT IGNORE

答案 1 :(得分:5)

您可以使用IGNORE keyword从插入内容中删除重复项:

INSERT IGNORE INTO yourTable Values (...)