John在我使用CHARACTER VARYING
的地方使用VARCHAR
。我是初学者,而他是专家。这表明我有一些我不知道的东西。
PostgreSQL中的CHARACTER VARYING和VARCHAR有什么区别?
变化是varchar的别名,所以没有区别,请参阅documentation:)
符号varchar(n)和char(n)是字符变化的别名(n)和character(n)分别。没有长度说明符的字符是等同于character(1)。如果不使用字符变化长度说明符,类型接受任何大小的字符串。后者是PostgreSQL扩展。
PostgreSQL documentation on Character Types为此很好的参考。它们是同一类型的两个不同名称。
唯一的区别是CHARACTER VARYING比VARCHAR更人性化>
两者都是同一件事,但是许多数据库没有提供主要由postgreSQL提供的可变字符。因此,对于像Oracle Postgre和DB2这样的多数据库,最好使用Varchar
简短的答案:没有区别。