0

我正在设计一个数据库,因为我还不熟悉我想知道的数据类型:

如果我不关心字符向量的长度,是否适合使用varchar?(即使字符串应该很短?)

到目前为止,当我需要存储非常长的字符串时,我一直在使用文本(varchar),但是阅读文档并提出问题,我听说如果提供了最大长度并且存储的字符串的长度是,postgresql 不会存储额外的字节小于它。我猜想使用最大长度以防远程设备负担不起大的内存空间。有人可以同意或解释吗?

4

1 回答 1

3

从文档:

这三种类型之间没有性能差异,除了使用空白填充类型时增加了存储空间,以及在存储到长度受限的列时需要一些额外的 CPU 周期来检查长度。虽然 character(n) 在其他一些数据库系统中具有性能优势,但在 PostgreSQL 中没有这样的优势;事实上 character(n) 通常是三个中最慢的,因为它有额外的存储成本。在大多数情况下,应改为使用文本或字符变化。

于 2013-05-13T15:27:50.660 回答