我有一个 contacts
表,其中包含字段,如 postcode
,first name
,last name
,town
,country
,phone number
等,所有这些字段都被定义为 VARCHAR(255)
,即使这些字段将永远不会接近有255个字符。(如果您想知道,这是因为 Ruby on Rails 迁移默认将 String 字段映射到 VARCHAR(255)
,而我从未费心去覆盖它)。
因为 VARCHAR 只存储字段的实际字符数(以及字段长度) ,所以使用 VARCHAR(16)
比使用 VARCHAR(255)
有什么明显的优势(性能或其他方面)吗?
此外,这些字段中的大多数都有索引。字段中较大的 VARCHAR 大小是否会影响索引的大小或性能?
仅供参考,我正在使用 MySQL5。