在create table输出中显示排序规则

时间:2014-02-16 21:18:55

标签: mysql sql

我正在MySQL中编写一组SQL语句来创建和修改几个表。我需要让我的输出完全匹配样本输出的文档(这是为了学校)。

当我显示我的create table语句时,所有varchar列都需要如下所示:

`name` varchar(10) COLLATE utf8_unicode_ci DEFAULT NULL,

但他们没有显示整理。我尝试将声明更改为

name varchar COLLATE utf8_unicode_ci DEFAULT NULL,

但是这导致输出显示字符集和排序规则,我需要显示排序规则。示例输出文档是在Unix上创建的,而我在Windows上,所以这可能是差异的根源,但我需要确定。

有没有办法可以改变我的查询以显示排序规则,还是这只是Unix Windows的不一致?

1 个答案:

答案 0 :(得分:1)

说实话,我非常怀疑有人打算让你获得相同的输出 verbatem - 他们更有可能要求它们在语义上相同。但是,您可以使用表的默认字符集/排序规则来查看是否会对从SHOW CREATE TABLE获得的输出产生影响:

ALTER TABLE foo CHARACTER SET utf8 COLLATE ut8_bin;

如果不这样,它可能是MySQL版本之间的差异。