2

我很难在 MySQL 中创建一个带有 UTF 字符的表。我完全不知道如何解决这个问题。

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

代码:

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

信息:

Invalid utf8 character string: '_❎'

但是,这有效:

SELECT _utf8'_❎'
4

2 回答 2

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 和更高版本)

于 2013-10-15T21:32:43.233 回答
3

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

于 2013-10-15T21:27:51.387 回答