模板表tb_template的其中一列szBrand的collation是Table Default。
然后我使用命令
create table tb_01 select * from tb_template where 1=2;
复制获得的表tb_01中的szBrand,的collation属性居然是latin1-default collation。然后插入中文直接就报错了。
但是模板表的列szBrand collation因为是Table Default插入中文没有任何问题。。
于是我有尝试了下将生成的表格中的列属性更改为Table Default,得到以下命令语句
ALTER TABLE `cars`.`tb_01`
CHANGE COLUMN `szBrand` `szBrand` VARCHAR(20) NULL DEFAULT NULL;
这条语句执行后可以把属性修改为table default。
很奇怪的现象,明明模板表是正确的属性,复制表以后就变样了?
我希望复制表结构以后就得到正确的列属性了。应该怎么修改下呢?是哪里的字符集出错了呢?