【问题标题】:Can one change MySQL's default assignment from character sets to collations?可以将 MySQL 的默认分配从字符集更改为排序规则吗?
【发布时间】:2013-12-19 08:40:06
【问题描述】:

我建立了一个 MySQL 数据库,版本 5.5.31。字符集utf8mb4 的默认排序规则是utf8mb4_general_ci(如SHOW CHARACTER SET 所示)。我想把它改成utf8mb4_unicode_ci

有没有办法将默认分配从字符集更改为排序规则?还是硬编码并编译到 MySQL 二进制文件中?

【问题讨论】:

  • 对不起,但这并不能回答我的问题。引用的问题显示了如何为客户端-服务器连接设置默认字符集和编码。但是,如果创建一个指定字符集 utf8mb4 的表(没有显式设置排序规则),这将无济于事——然后使用默认排序规则 utf8mb4_general_ci 而不是所需的 utf8mb4_unicode_ci

标签: mysql collation my.cnf


【解决方案1】:
ALTER DATABASE db_name CHARACTER SET utf8mb4_unicode_ci;

请参阅参考资料here

【讨论】:

  • 因为这确实改变了数据库的 CHAR SET,所以在创建新的 SCHEMAS 时不会将其更改为标准 CHAR SET
  • TS 想更改数据库的字符集,还是我误解了问题?
  • 当您ALTER DATABASE db_name 时,您更改了该数据库的设置。但是如果你CREATE DATABASE 它仍然会使用服务器的默认设置。上面的代码不会改变这一点。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-07-27
  • 2015-09-29
  • 2021-01-28
  • 1970-01-01
  • 2018-12-19
  • 2010-09-14
相关资源
最近更新 更多