这似乎是我遗漏了一些琐碎的东西,但我无法从Schema默认值中更改表的排序规则。从下拉列表中选择任何内容只会恢复为Schema默认值。
我将utf8 - utf8_general_ci设置为模式排序规则,可以在没有问题的情况下进行更改。
但是,即使模式默认值设置为utf8_general_ci,表应该使用模式默认值,但当我导出script脚本并在phpMyAdmin中导入它时,排序规则被设置为latin1_swedish_ci。
脚本本身包含正确的CREATE模式语句:
CREATE SCHEMA IF NOT EXISTS 'my_table' DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci ;
但是CREATE语句只包含引擎分配。
我使用的是MySQL Workbench 6.0,我使用的服务器运行的是MySQL 5.5.34和phpyMyAdmin 3.4.11.1。服务器默认排序规则也是utf8_general_ci。
编辑:如我所怀疑的,一些愚蠢的东西。我事先通过cPanel而不是通过SQL脚本创建了数据库,默认排序规则被设置为latin1_swedish_ci。
但是,这并不能解释为什么我不能在Workbench中的表上设置特定的排序规则。
发布于 2013-10-27 04:59:50
如果排序规则没有按照应该给出的方式给出,则肯定会恢复为Schema默认值。
发布于 2013-11-04 09:09:22
您在MySQL工作台中设置的排序规则实际上是在哪里设置的?有两个位置,一个用于建模,一个用于活动对象(服务器中现有的db对象)。
如果是后者,您是否应用了您的更改?
https://stackoverflow.com/questions/19614729
复制相似问题