如果我定义一个
我的问题是:除了 SQL 只显示插入字段的字符串(如果超过了最大长度,则截断字符串)这一事实之外,Postgresql 是如何存储这种数据类型的?
它是否使用额外的字节进行填充,例如:
我认为这在内部可能更加复杂。我只需要知道
varchar(25)
,并且我的字符串长度小于25个字符(例如12个字符),SQL 将以 12 的长度显示字符向量,并且没有添加尾随空格(与字符不同)。我的问题是:除了 SQL 只显示插入字段的字符串(如果超过了最大长度,则截断字符串)这一事实之外,Postgresql 是如何存储这种数据类型的?
它是否使用额外的字节进行填充,例如:
还是只存储12个字节?twelvecharxx............. (长度 : 25)
我认为这在内部可能更加复杂。我只需要知道
maximum-length
可选参数是否是禁止存储大型字符串的安全措施,还是仅涉及性能问题(关于所有存储的子序列字符串都预计少于或等于25个字符)。