为什么MariaDB 10.4.8(最新版本)不能更改此列类型?

时间:2019-10-24 16:34:46

标签: mysql mariadb

MariaDB [myDatabase]> alter table myTable MODIFY Descr varchar(255) default '' not null CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

ERROR 1064 (42000): 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 'CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci' at line 1

为什么会失败?语法正确,不是吗?

1 个答案:

答案 0 :(得分:1)

CHARACTER SETCOLLATION是数据类型规范的一部分,因此它们必须直接位于VARCHAR(255)之后,您不能将DEFAULT和{{1} }属性。

NOT NULL