【发布时间】:2010-03-30 02:37:23
【问题描述】:
我使用的是 MySQL 4.1。一些表具有违反约束的重复条目。
当我尝试对行进行分组时,MySQL 不会将这些行识别为相似的。
例子:
表 A 有一个具有唯一属性的“名称”列。
该表包含一行名称为“Hach?”和一行具有相同名称但末尾有一个正方形而不是“?” (我无法在此文本字段中重现)
这 2 行上的“分组依据”返回 2 个单独的行
这会导致一些问题,包括我无法导出和重新导入数据库。在重新导入错误时提到插入失败,因为它违反了约束。
理论上我可以尝试导入,等待第一个错误,修复导入脚本和原始数据库,然后重复。实际上,这将需要很长时间。
有没有办法列出所有异常或强制数据库重新检查约束(并列出所有违反它们的值/行)?
如果有帮助,我可以提供 .MYD 文件。
【问题讨论】:
-
如果两个名称不相等,则不违反重复约束。我不关注你这里。如果是损坏的数据,您应该更正它。
-
当我导出和重新导入数据时它们是相等的。 “如果是损坏的数据,你应该更正它。”如何找到损坏的数据?我无法搜索正方形。
-
如果我的描述不准确,我很抱歉,但问题真的很奇怪。
标签: mysql duplicates