【发布时间】:2012-09-01 13:27:01
【问题描述】:
据我了解,如果您将列声明为 varchar(15) 或 varchar(200),则内存大小没有区别。如果您存储 4 个字符的字符串,它应该只使用大约 4 个字节。这在 Oracle 中对于 varchar2 是相同的。但是,对于 Oracle,它们的性能是不同的,因为您设置的大小越大,使用的开销就越多。
在 MySQL(或任何其他数据库)中是否相同?
【问题讨论】:
-
在 mysql 中,它使用长度+1 字节,或者如果您定义的 varchar 大于 255,则使用长度+2 字节。如果该字段是 utf8,则字节大小可能是声明大小的 3 倍
-
感谢您的回复。我明白你说的。开销如何?这是相同的还是主要的不同
-
我会说差不多。担心这个是“微优化”
标签: mysql sql oracle varchar varchar2