【问题标题】:How to change table (default) collation in MySQL WITHOUT converting the columns [duplicate]如何在不转换列的情况下更改 MySQL 中的表(默认)排序规则[重复]
【发布时间】:2016-11-07 08:36:52
【问题描述】:

在 mysql 表上更改排序规则的常用方法是:

ALTER TABLE <table_name> CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;

我想要做的是更改表默认排序规则而不更改现有的列排序规则。我怎样才能做到这一点?

【问题讨论】:

  • ALTER TABLE tbl_name [[DEFAULT] CHARACTER SET charset_name] [COLLATE collation_name] 只需省略 CONVERT TO 部分并设置表格的字符集。现有列将不会被转换。参考:dev.mysql.com/doc/refman/5.7/en/charset-table.html
  • Grrr... 这不是一个重复。这将讨论 table 的 default。另一个谈论混乱的角色(尽管标题是这样说的)。

标签: mysql collation


【解决方案1】:

ALTER TABLE 有两种不同的方法来更改表的字符集。问题中提到的是将所有基于字符的列转换为给定的字符集。

设置表DEFAULT字符集不会改变现有列的字符集。

ALTER TABLE tbl_name
  [[DEFAULT] CHARACTER SET charset_name]
  [COLLATE collation_name]

相关文档条目:

http://dev.mysql.com/doc/refman/5.7/en/alter-table.html http://dev.mysql.com/doc/refman/5.7/en/charset-table.html

【讨论】:

    猜你喜欢
    • 2010-10-19
    • 2015-05-18
    • 1970-01-01
    • 1970-01-01
    • 2011-02-19
    • 2010-09-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多