0

I am asked to set all table's default COLLATE to utf8_bin. How to do this?

4

3 回答 3

0
        ALTER TABLE <table name> COLLATE utf8_bin;

如果您还需要更新现有的字符编码(不太可能通过事物的声音),您可以使用:

      ALTER TABLE <table name> CONVERT TO CHARACTER SET utf8 COLLATE utf8_bin;
于 2013-09-17T11:06:01.557 回答
0

这个怎么做?

一次一个,恐怕...

alter table <some_table> convert to character set utf8 collate utf8_bin;

没有批量方法,除非您想使用mysqldump来获取整个数据库,否则编辑生成的转储以添加所需的排序规则,然后再次重新导入整个数据库。

于 2013-09-17T09:42:50.193 回答
0
SELECT CONCAT("ALTER TABLE ", TABLE_NAME," COLLATE utf8_bin") AS    String
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA="YourDatabaseName"
AND TABLE_TYPE="BASE TABLE"

一个查询统治所有,只需运行此查询的结果。

于 2013-09-17T09:47:39.563 回答