【发布时间】:2012-04-07 11:49:01
【问题描述】:
所以我跑
UPDATE x
SET y = y + 1;
其中 y 是表的主键...但是假设表中有两个条目 y = 1,2,3...查询将抱怨键 'PRIMARY' 的重复条目,因为它尝试将 y = 1 更新为 y = 2,它会与另一个已经存在的 y = 2 条目冲突......有没有办法让 mysql 忽略这一点,并且无论如何都要更新所有内容,而无需手动删除密钥....我知道我可以暂时删除密钥,然后执行此操作,然后重新添加密钥,但我想知道是否有可能不这样做...
【问题讨论】:
-
嗯,你为什么要这么做? :)
-
如何搜索有问题的键,然后只修复它们?你真的要求将所有键调整为 key+1 吗?
-
@Randy 是的.......
-
请记住,如果这是从主表到明细表,那么每个实体都会中断。