John usa CHARACTER VARYINGnos lugares onde eu uso VARCHAR. Eu sou um iniciante, enquanto ele é um especialista. Isso me sugere que há algo que eu não sei.
Qual é a diferença entre CHARACTER VARYING e VARCHAR no PostgreSQL?
John usa CHARACTER VARYINGnos lugares onde eu uso VARCHAR. Eu sou um iniciante, enquanto ele é um especialista. Isso me sugere que há algo que eu não sei.
Qual é a diferença entre CHARACTER VARYING e VARCHAR no PostgreSQL?
Respostas:
Varying é um apelido para varchar, portanto, não há diferença, consulte a documentação :)
As notações varchar (n) e char (n) são apelidos para character Variaing (n) e character (n), respectivamente. caractere sem especificador de comprimento é equivalente a caractere (1). Se a variação de caractere for usada sem especificador de comprimento, o tipo aceita strings de qualquer tamanho. O último é uma extensão do PostgreSQL.
varchar(n), etc. são os padrões ANSI e esta sintaxe é peculiar ao PostgreSQL.
A documentação do PostgreSQL sobre os tipos de caracteres é uma boa referência para isso. Eles são dois nomes diferentes para o mesmo tipo.
A única diferença é que CHARACTER VARYING é mais amigável do que VARCHAR
Ambos são a mesma coisa, mas muitos dos bancos de dados não estão fornecendo os caracteres variáveis que o postgreSQL fornece. Portanto, para bancos de dados múltiplos como Oracle Postgre e DB2, é bom usar o Varchar
A resposta curta: não há diferença.
A resposta longa: CHARACTER VARYINGé o nome de tipo oficial do padrão ANSI SQL, que todos os bancos de dados compatíveis devem oferecer suporte. VARCHARé um apelido mais curto que todos os bancos de dados modernos também suportam. Prefiro VARCHARporque é mais curto e porque o nome mais longo parece pedante. No entanto, as ferramentas do postgres gostam pg_dumpe \dproduzirão character varying.