我正在设计一个数据库,因为我还不熟悉数据类型,我想知道以下内容:
如果我不关心字符向量的长度,是否适合使用 varchar ? (即使字符串预计很短?)
直到现在我一直在使用 text (varchar)当我需要存储非常长的字符串但是阅读文档并询问周围的问题时我听说postgresql如果最大值则不存储额外字节提供-length并且存储的字符串的长度小于它。 我想最大长度用于远程设备无法承受大的内存空间。 可以同意或解释一下吗?
答案 0 :(得分:3)
来自文档:
这三种类型之间没有性能差异,除了使用空白填充类型时增加的存储空间,以及一些额外的CPU周期来检查存储到长度受限列中的长度。虽然character(n)在其他一些数据库系统中具有性能优势,但PostgreSQL没有这样的优势;事实上,由于额外的存储成本,字符(n)通常是三者中最慢的。在大多数情况下,应该使用文字或字符变化。