我正在运行mysql 5.6。
我从以前的开发人员继承的模式中的某些列具有明确指定的collate
子句。
所有明确指定的collate
子句与数据库的默认collate
相同。
有没有办法删除显式列collate
子句?
与我当前的collate
相比,应该没有功能整理差异,但我想要以下内容:
在我请求时,获取列定义sans collate
子句
来自mysql的create table
语句(我希望能够进行比较
来自具有create table
的代码存储库的表创建脚本
从模式的不同实例获得的语句
不同的mysql服务器;显式列collate
子句是
只有在某些情况下,而不是其他情况,这需要我
使用比纯文本差异更复杂的差异
让这些列的collate
自动更改为
如果我更改它,那么新的默认数据库collate
是什么
1)比2)重要得多,因为我可能永远不会再次更改collate
。
感谢。
答案 0 :(得分:0)
而不是使用SHOW CREATE TABLE
,而是从information_schema
表TABLES
和COLUMNS
中获取等效数据。
与此同时,您是否有一个COLLATION
条款在某些情况下出现的例子,但在其他情况下却没有?