如何更改数据库、表、列的排序规则(collation)?

30 浏览
0 Comments

如何更改数据库、表、列的排序规则(collation)?

现在数据库使用的是latin1_general_ci,我想要将其更改为utf8mb4_general_ci的排序规则。

在PhpMyAdmin中是否有设置能够直接更改数据库、表、列的排序规则,而不是逐一更改?

admin 更改状态以发布 2023年5月21日
0
0 Comments

你需要单独地将每个表进行转换:

ALTER TABLE mytable CONVERT TO CHARACTER SET utf8mb4 

(这将同样地转换列),或者使用 latin1 导出数据库,然后用 utf8mb4 导入它。

0
0 Comments

我在这里贡献,因为原帖作者提到:

如何更改数据库、表、列的排序规则?

所选答案仅在表级别上说明了它。


将其应用于整个数据库:

ALTER DATABASE  CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

将其应用于每个表:

ALTER TABLE  CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

优秀的做法是在表级别上更改,因为它也会更改列。更改特定列是为任何特定情况而设的。

为特定列更改排序规则:

ALTER TABLE  MODIFY  VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

0