我有一个专栏,char(9)。我想将它增加到 char(10)。这会占用我的数据库吗?您可以像这样增加它而不会在数据库中出现问题吗?谢谢。
问问题
141 次
3 回答
3
如果将列从 更改为char(9)
,char(10)
那么 MySQL 将重建整个表,用一个空格右填充现有值。由于重建,执行时间将取决于表的大小,因此请适当计划。
于 2012-05-18T16:01:38.070 回答
3
只要没有什么取决于 char 列是 9 个字符。大多数情况下这应该没问题(就数据库继续运行而言应该没问题),但是您需要仔细考虑是否有任何软件正在使用列宽来做任何事情。
例如,如果软件期望所有值都是 9 个字符(并且它不会修剪字符串),您可能会发现自己遇到了问题。
我建议为可变长度数据使用 varchar
于 2012-05-18T15:59:41.673 回答
1
刚试过这个,不需要打电话给炸弹小队,哈哈:
ALTER TABLE `mytable` CHANGE `myfield` `myfield` CHAR(10) CHARSET latin1 COLLATE latin1_swedish_ci NULL;
于 2012-05-18T16:00:59.660 回答