В чем разница между CHARACTER VARYING и VARCHAR в PostgreSQL?

Джон использует CHARACTER VARYING в местах, где я использую VARCHAR, Я новичок, а он эксперт. Это наводит меня на мысль, что есть что-то, чего я не знаю.

В чем разница между CHARACTER VARYING и VARCHAR в PostgreSQL?

4 ответа

Решение

Varying - это псевдоним для varchar, поэтому без разницы смотрите документацию:)

Обозначения varchar (n) и char (n) являются псевдонимами для символов, изменяющихся (n) и символа (n), соответственно. символ без спецификатора длины эквивалентен символу (1). Если изменение символов используется без спецификатора длины, тип принимает строки любого размера. Последнее является расширением PostgreSQL.

Документация PostgreSQL по типам символов является хорошим справочным материалом для этого. Это два разных имени для одного типа.

Короткий ответ: разницы нет.

Длинный ответ: CHARACTER VARYING - это официальное имя типа из стандарта ANSI SQL, которое должны поддерживать все совместимые базы данных. VARCHARэто более короткий псевдоним, который также поддерживают все современные базы данных. я предпочитаюVARCHARпотому что оно короче, а более длинное имя кажется педантичным. Однако такие инструменты postgres, какpg_dump а также \d выведет character varying.

Единственное отличие состоит в том, что CHARACTER VARYING более дружелюбен, чем VARCHAR.

И то, и другое - одно и то же, но многие базы данных не предоставляют переменные символы, которые в основном предоставляет postgreSQL. Так что для нескольких баз данных, таких как Oracle Postgre и DB2, хорошо использовать Varchar

Другие вопросы по тегам