MySQL重复输入错误#1062

MySQL重复输入错误#1062,mysql,Mysql,我正在运行一个trim查询来删除slug列中尾随“-”的所有行 我有重复的行,但这是现在必需的 如何修复错误,使其运行修剪查询 UPDATE terms SET slug = TRIM(TRAILING '-' FROM slug); 错误:#1062-键“slug”的重复输入“system”看起来列slug被定义为唯一键或主键。如果要保留重复记录,可能需要从此列中删除UNIQUE或PRIMARY KEY或/并引入不同的PRIMARY KEY/UNIQUE列。如果在slug列上设置了UNIQU

我正在运行一个trim查询来删除slug列中尾随“-”的所有行

我有重复的行,但这是现在必需的

如何修复错误,使其运行修剪查询

UPDATE terms
SET slug = TRIM(TRAILING '-' FROM slug);

错误:
#1062-键“slug”的重复输入“system”

看起来列slug被定义为唯一键或主键。如果要保留重复记录,可能需要从此列中删除UNIQUE或PRIMARY KEY或/并引入不同的PRIMARY KEY/UNIQUE列。

如果在
slug
列上设置了
UNIQUE
约束,则必须删除该约束:

ALTER TABLE terms DROP INDEX my_unique_constraint

请注意,以上内容仅适用于MySQL-语句因数据库而异。

错误是什么?请出示它好吗?#1062-重复输入'system'键'slug',您有两行,其中slug列包含system和system-例如,一行带有“system”,另一行带有“system-”是的,这是正确的。但是因为它们都引用了两个不同的东西(由它们的ID设置),所以我必须保留它们。可能必须去掉slud上的unique。然后从slug中删除并将另一列设置为unique key,或者添加一个新列以定义unique/PRIMARY key。如果该slug列被声明为具有pirmary/unique key,那么该列中怎么可能存在重复项$@bonCodigo:现在没有重复的行,但该错误意味着在执行
TRIM
之后,将有重复的行。@DCoder是正确的,在TRIM之前没有重复的行。e、 g.一行包含“a”,第二行包含“a-”。但是在修剪之后,两者都将有一个不允许的,因为列被定义为唯一/主键。谢谢大家。你知道我应该怎么做吗?如果你想把包含系统的两行都保留在slug列中,那么你应该从slug中删除UNIQUE约束,并将另一列定义为主键/UNIQUE。或者在删除现有密钥后根本不定义唯一/主键。这完全取决于你想如何解决这场冲突。