Sql ';的最小值和最大值是多少;n';在Postgres中创建表时,在字符(n)、字符变化(n)和文本数据类型中?
在上面的查询中,“n”的限制是多少Sql ';的最小值和最大值是多少;n';在Postgres中创建表时,在字符(n)、字符变化(n)和文本数据类型中?,sql,postgresql,Sql,Postgresql,在上面的查询中,“n”的限制是多少 create table abc(name character(n), name1 character varying(n), name2 text); 在上面的查询中,如果我们没有为“n”指定任何值,将需要什么? 符号varchar(n)和char(n)分别是字符变化(n)和字符(n)的别名字符不带长度说明符等同于字符(1)。如果使用字符变化而不使用长度说明符,则该类型接受任何大小的字符串 再往下看: 在任何情况下,可以存储的最长字符串大约为1GB 创建
create table abc(name character(n), name1 character varying(n), name2 text);
在上面的查询中,如果我们没有为“n”指定任何值,将需要什么?
符号varchar(n)
和char(n)
分别是字符变化(n)
和字符(n)
的别名<代码>字符不带长度说明符等同于字符(1)
。如果使用字符变化而不使用长度说明符,则该类型接受任何大小的字符串
再往下看:
在任何情况下,可以存储的最长字符串大约为1GB
创建表时,字符和字符变化数据类型的“n”限制为
create table abc(name character(), name1 character varying(), name2 text);
- character(),如果在创建表时未将默认长度指定为字符(1),但可以将列值保留为空
- character variating()如果不指定创建列时不会出现错误的长度,则可以在列中插入0到10485760个字符的值
- 对于
text
数据类型,不能指定长度,可以在列中插入0到10485760个字符的值
这对我们来说根本不是真的PostgreSQL@pozs谢谢你的评论。请参考更新的答案。我很高兴听到你的评论。PostgreSQL,仍然。这些类型只有存储限制,但由于它可以使用UTF-8(默认情况下使用),UTF-8具有可变长度的字符表示,因此它们实际上没有可以存储的最大字符数。在varchar(n)
中,n
的n
限制为10485760个字符,请参见答案的其余部分显然不正确,阅读
MIN MAX
CHARACTER(n) --> 1 to 10485760 characters(not bytes)
CHARACTER VARYING(n) --> 1 to 10485760 characters(not bytes)