MySQL:具有UTF字符的表名

时间:2013-10-15 21:10:32

标签: mysql unicode encoding utf-8 utf

我很难在MySQL中使用UTF字符创建表格。我完全迷失了如何解决这个问题。

此特定表名中只有两个特殊字符:

代码:

CREATE TABLE `_❎` (id INT(11) UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT);

消息:

Invalid utf8 character string: '_❎'

然而,这是有效的:

SELECT _utf8'_❎'

2 个答案:

答案 0 :(得分:5)

看看以下页面: http://dev.mysql.com/doc/refman/5.1/en/identifiers.html

有问题的char是1F4D2,正如文档所述:

  

带引号的标识符中的允许字符包括完整的Unicode基本多语言平面(BMP),但U + 0000除外:

     

ASCII:U + 0001 .. U + 007F

     

扩展:U + 0080 .. U + FFFF

     

引用或不带引号的标识符中不允许使用ASCII NUL(U + 0000)和补充字符(U + 10000及更高版本)

答案 1 :(得分:3)

如果您使用的是MySQL 5.5.3或更高版本,我会将您的字符集设置为utf8mb4