我需要澄清MySQL中varchar字段的最大长度.
我一直认为最大长度是255(我假设是255个什么字符,但这可能是我困惑的原因).看看我们正在合作的一家外部公司建立的数据库的表,我看到一个字段设置为varchar(20000),包含长度超过255个字符的xml块.为什么会这样?20000是有效值吗?
通过谷歌搜索发现,在mysql中,varchar有65535字节的限制,我看到varchar(65535)in use,那么255字节的限制与此有什么关系呢?
我需要澄清MySQL中varchar字段的最大长度.
我一直认为最大长度是255(我假设是255个什么字符,但这可能是我困惑的原因).看看我们正在合作的一家外部公司建立的数据库的表,我看到一个字段设置为varchar(20000),包含长度超过255个字符的xml块.为什么会这样?20000是有效值吗?
通过谷歌搜索发现,在mysql中,varchar有65535字节的限制,我看到varchar(65535)in use,那么255字节的限制与此有什么关系呢?
请注意MySQL版本.
VARCHAR列中的值是可变长度的字符串.在MySQL 5.0.3之前,长度可以指定为0到255之间的值,在5.0.3及更高版本中,长度可以指定为0到65535之间的值.MySQL 5.0.3及更高版本中VARCHAR的有效最大长度取决于最大行大小(65535字节,在所有列中共享)和使用的字符集.
运行以下查询...
select version() as myVersion