Mysql 为什么可以';t MariaDB 10.4.8(最新版本)是否更改此列类型?

Mysql 为什么可以';t MariaDB 10.4.8(最新版本)是否更改此列类型?,mysql,mariadb,Mysql,Mariadb,为什么会失败?语法正确,不是吗? 字符集< /代码>和排序> 是数据类型规范的一部分,因此它们必须直接在 VARCHAR(255)< /代码>之后,不能在中间放置“默认< /代码>和非空属性。 MariaDB [myDatabase]> alter table myTable MODIFY Descr varchar(255) default '' not null CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ERROR 1064

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

<代码>字符集< /代码>和<代码>排序> <代码>是数据类型规范的一部分,因此它们必须直接在<代码> VARCHAR(255)< /代码>之后,不能在中间放置“<代码>默认< /代码>和<代码>非空属性。

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
alter table myTable MODIFY Descr varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci not null default '';