2008-08-07 46 views
3

Char's很棒,因为它们的大小是固定的,因此可以制作更快的表格。但是,它们限制为255个字符。我想保存500个字符,但一个blob是可变长度,这不是我想要的。比char大但小于blob

是否有某种方法可以在MySQL中拥有500个字符的固定长度字段,或者我将不得不使用2个字符字段?

回答

6

我会建议使用varchar(500)。即使varchar不是固定长度,数据库也应该保留正确的空间量。你不应该注意到使用varchar(500)超过2xchar(255)的性能差异。

您可能会通过将两个字符字段连接在一起而导致额外的开销。

2

我建议使用一个varchar(500)

...如果你有MySQL的5.0.3或更高版本。在以前的版本中,VARCHAR限制为255个字符。

另外,CHAR和VARCHAR在尾随空格处的工作方式不同。请务必阅读10.4.1. The CHAR and VARCHAR Types(这是针对MySQL 5.0的)。

0

您对内部实现细节太担心。不要预先优化。

前进VARCHAR(500)