我的数据库中有一个表,其中包含我设置的primary_key的字符串。在添加之前,我需要经常检查该表中是否存在大约1000个“项目”,因为不能有任何重复项。结果是每个项目有2个查询,或总共2000个查询,这是1-2秒的额外加载时间。
如果我尝试插入新行而不检查重复项,则不会插入,这很好,但是mysql会返回错误,这会导致我的服务崩溃。
我的问题:
答案 0 :(得分:5)
mysql返回错误,导致我的服务崩溃。
实际上你自己的代码会崩溃你的服务,因为mysql错误不会导致崩溃。
是否有更好的方法可以防止插入重复项
INSERT IGNORE
答案 1 :(得分:5)
您可以使用IGNORE
keyword从插入内容中删除重复项:
INSERT IGNORE INTO yourTable Values (...)