转换为utf8mb4_unicode_ci时出错

时间:2016-01-09 05:52:22

标签: mysql phpmyadmin

我正在处理的mysql服务器默认设置为latin1_swedish_ci。我正在尝试使用phpmyadmin转换为utf8mb4

以下是phpmyadmin生成并尝试运行的代码:

ALTER TABLE `entries` CHANGE `title` `title` VARCHAR(256) CHARSET=utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '';

这是我得到的错误:

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '=utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT ''' at line 1

如何更新此列?

2 个答案:

答案 0 :(得分:1)

您需要将MySQL版本更新为5.5.3或更高版本。 utf8mb4排序规则仅适用于此版本或更高版本。您可以在SQL选项卡phpMyAdmin

中输入此命令来检查MySQL版本
select version();

有关更新数据库以使用utf8mb4归类的详细信息,请参阅此内容非常丰富的文章。 https://mathiasbynens.be/notes/mysql-utf8mb4

答案 1 :(得分:0)

请尝试此查询:

ALTER TABLE `entries` CHANGE `title` `title` VARCHAR(255) CHARSET=utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '';

我们在mysql中可以存储在varchar中的最大数据是255.但是在Mysql 5.0.3之后varchar最多可以存储65,535个字符。您的Mysql版本低于5.0.3