Яка різниця між CHARACTER VARYING і VARCHAR у PostgreSQL?


Відповіді:


128

Варіант - псевдонім для varchar, тому різниці немає, дивіться документацію :)

Позначення varchar (n) та char (n) - псевдоніми для символів, що змінюються (n) та символів (n) відповідно. символ без специфікатора довжини еквівалентний символу (1). Якщо зміна символів використовується без специфікатора довжини, тип приймає рядки будь-якого розміру. Останнє є розширенням PostgreSQL.


9
Це навпаки: варчар - псевдонім для змін. Не бути педантичним, але це прямо у вашій цитаті.
zerzevul

2
@zerzevul Можна погодитися з документацією і погодитися з Чарльзом тут, враховуючи, що varchar(n)і т.д. є стандартами ANSI, і цей синтаксис властивий PostgreSQL.
BobRodes


4

Єдина відмінність полягає в тому, що ХАРАКТЕР ВАРІННЯ більш людський, ніж ВАРЧАР


1
@joop Я не мав честі піддаватися впливу COBOL, але я зазнав англійської мови, і я думаю, "VARCH ARe що?" :-)
inor

8
Окрім того, я думаю, що це заплутує топ-програмістів;) Вони звикли до varchar
manocha_ak

3

Обидві речі одне і те ж, але багато баз даних не надають різного ознаки, в основному надає postgreSQL. Тож для таких баз даних, як Oracle Postgre та DB2, добре використовувати Varchar


2

Коротка відповідь: різниці немає.

Довга відповідь: CHARACTER VARYINGофіційне ім'я типу з стандарту ANSI SQL, яке повинні підтримувати всі сумісні бази даних. VARCHARце коротший псевдонім, який також підтримують усі сучасні бази даних. Я віддаю перевагу VARCHARтому, що він коротший і тому, що довше ім’я відчуває педантичність. Однак інструменти постгресу люблять pg_dumpі \dбудуть виводити character varying.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.