13.1.18.6 静默色谱柱规格变更

在某些情况下,MySQL 会悄悄更改CREATE TABLEALTER TABLE语句中给定的列规范。这些可能是对数据类型,与数据类型相关联的属性或索引规范的更改。

所有更改均受内部 65,535 字节的行大小限制,这可能会导致某些尝试更改数据类型的尝试失败。参见第 8.4.7 节“table 列数和行大小的限制”

CREATE TABLE t
(
  c1 VARCHAR(10) CHARACTER SET binary,
  c2 TEXT CHARACTER SET binary,
  c3 ENUM('a','b','c') CHARACTER SET binary
);

结果 table 具有以下定义:

CREATE TABLE t
(
  c1 VARBINARY(10),
  c2 BLOB,
  c3 ENUM('a','b','c') CHARACTER SET binary
);

要查看 MySQL 是否使用了您指定的数据类型以外的其他数据类型,请在创建或更改 table 后发出DESCRIBE显示创建 table语句。

如果使用myisampack压缩 table,则可能会发生某些其他数据类型更改。参见第 15.2.3.3 节“压缩 tableFeature”

首页