【发布时间】:2011-10-03 21:10:52
【问题描述】:
我想用UUID()来生成主键。
经过一番调查,我认为这应该可行:
INSERT INTO aTable (`id`) VALUES (UNHEX(REPLACE(UUID(),'-','')));
其中id 的类型为BINARY(16)。
不幸的是,UUID() 返回一个使用utf8_general_ci 排序规则的值。我的数据库的其余部分使用utf8_unicode_ci,这意味着我收到以下错误:
#1270 - Illegal mix of collations (utf8_general_ci,COERCIBLE), (utf8_unicode_ci,COERCIBLE), (utf8_unicode_ci,COERCIBLE) for operation 'replace'
我怎样才能说服UUID()好好演奏并使用utf8_unicode_ci?
【问题讨论】:
标签: mysql utf-8 collation uuid