繁体   English   中英

在 Postgres 中创建表时,CHARACTER(n)、CHARACTER VARYING(n) 和 TEXT 数据类型中“n”的最小值和最大值是多少?

[英]What is the min and max value for 'n' in CHARACTER(n), CHARACTER VARYING(n) and TEXT datatype while creating a table in Postgres?

create table abc(name character(n), name1 character varying(n), name2 text); 

在上面的查询中,'n' 的限制是多少?

create table abc(name character(), name1 character varying(), name2 text);      

在上面的查询中,如果我们没有为 'n' 指定任何值,将会发生什么?

从手册中引用

符号varchar(n)char(n)分别是character varying(n)character(n)别名。 character而不长度说明等同于character(1) 如果在没有长度说明符的情况下使用character varying ,则该类型接受任何大小的字符串。

再往下:

在任何情况下,可以存储的最长字符串大约是 1 GB

在创建表时,CHARACTER 和 CHARACTER VARYING 数据类型的“n”限制是,

                           MIN        MAX 
CHARACTER(n)          -->    1    to   10485760 characters(not bytes)
CHARACTER VARYING(n)  -->    1    to   10485760 characters(not bytes)
  • character() 如果您在创建表时没有指定它默认为 character(1) 的长度,但您可以将列值留空。
  • 字符变化()如果您不指定长度,它将创建没有错误的列,您可以将 0 到 10485760 个字符的值插入到该列中。
  • 对于无法指定长度的text数据类型,您可以在列中插入 0 到 10485760 个字符的值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM