• postgres数据库varchar类型的最大长度


      在分析一个场景时,postgres中的一个字段存储很长的字符串时,是否可能存在问题。被问到varchar类型的最大长度,不是很清楚。

           查了一下,记录一下。

    名字描述
    character varying(n)varchar(n) 变长,有长度限制
    character(n)char(n) 定长,不足补空白
    text 变长,无长度限制

         

      简单来说,varchar的长度可变,而char的长度不可变,对于postgresql数据库来说varchar和char的区别仅仅在于前者是变长,而后者是定长,最大长度都是10485760(1GB)

      varchar不指定长度,可以存储最大长度(1GB)的字符串,而char不指定长度,默认则为1,这点需要注意。

      text类型:在postgresql数据库里边,text和varchar几乎无性能差别,区别仅在于存储结构的不同。

      对于char的使用,应该在确定字符串长度的情况下使用,否则应该选择varchar或者text。


            其他人说的最大长度是10485760,我不是DBA,也没做过这个实验。但是有疑问,编码格式不为UTF-8时,是否还是10485760?

            text类型是挺好用的,假如需要存储一个复杂且结构可能会变化的数据,搞成json字符串存储到text里也是很好的。感觉成了MongoDB

  • 相关阅读:
    Unity3D屠龙战机项目总结
    10.2 MySQL数据库安装
    10.1 JDBC基础
    9.5 异常处理规则
    9.4 Java的异常跟踪栈
    9.3 使用throw抛出异常
    9.2 Checked异常和Runtime异常
    9.1 异常处理机制
    8.5 泛型和数组
    8.5 擦除和转换
  • 原文地址:https://www.cnblogs.com/lnlvinso/p/12369472.html
Copyright © 2020-2023  润新知