mySQL:更新记录/重复条目/整理/二进制

mySQL: update Record / duplicate entry / collate / binary

我有一个名为 url (varchar 255) 的字段,它设置为 uniqueutf8mb4_general_ci 作为排序规则。

尝试更新记录以设置此 url 时:https://en.wikipedia.org/wiki/Léa_(film)

我收到重复错误,因为存在另一条记录 https://en.wikipedia.org/wiki/Lea_(film) 作为 URL (没有口音)。

我试图添加 COLLATE utf8_bin 这给了我一个错误:

COLLATION 'utf8_bin' is not valid for CHARACTER SET 'latin1'

我也尝试过使用 (CAST 'https://en.wikipedia.org/wiki/Léa_(film)' AS BINARY) 转换 URL 但也没有帮助。

有没有办法或唯一的解决方案将字段排序规则更改为 utf8_bin

谢谢

when trying to update a record to set this url: https://en.wikipedia.org/wiki/Léa_(film)

i am getting a duplicate error because another record exsists having https://en.wikipedia.org/wiki/Lea_(film) as URL (without accent).

如果不能将此类值视为重复值,则必须执行 ALTER TABLE 以更改列的设置并根据它的排序规则进行设置(例如,utf8mb4_0900_as_ciutf8mb4_bin - 请参见 SHOW COLLATION LIKE 'utf8mb4_%'; 和 select 正确排序)。