Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / char/varchar / 5 сообщений из 5, страница 1 из 1
28.01.2014, 15:12:23
    #38540619
letete
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
char/varchar
очень простой вопрос: чем принципиально отличаются типы char и varchar?

в хелпе написано:
Код: plaintext
1.
2.
3.
 Tip : There is no performance difference among these three types, apart from increased storage space when using the blank-padded type,
and a few extra CPU cycles to check the length when storing into a length-constrained column. While character(n) has performance advantages
in some other database systems, there is no such advantage in PostgreSQL; in fact character(n) is usually the slowest of the three because
of its additional storage costs. In most situations text or character varying should be used instead.

тогда зачем тип char вообще существует?

Спасибо!
...
Рейтинг: 0 / 0
28.01.2014, 15:21:02
    #38540638
Maxim Boguk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
char/varchar
leteteочень простой вопрос: чем принципиально отличаются типы char и varchar?

в хелпе написано:
Код: plaintext
1.
2.
3.
 Tip : There is no performance difference among these three types, apart from increased storage space when using the blank-padded type,
and a few extra CPU cycles to check the length when storing into a length-constrained column. While character(n) has performance advantages
in some other database systems, there is no such advantage in PostgreSQL; in fact character(n) is usually the slowest of the three because
of its additional storage costs. In most situations text or character varying should be used instead.

тогда зачем тип char вообще существует?

Спасибо!

для совместимости с ANSI SQL стандартном в основном... там еще много таких странных фич есть...
практически это было надо когда были текстовые терминалы с моноширинным шрифтом... для упрощения вывода на экран (лет 30 назад)...
сейчас char(N) типы используются весьма редко... так как задач под них нет
...
Рейтинг: 0 / 0
28.01.2014, 17:04:17
    #38540872
ARTURV
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
char/varchar
letete,

char - задает точное число символов текстовой переменной, varchar(n) Задает максимальное значение символов в строке, но при этом может быть меньше. И при хранении данных у такой строки первые байты содержат длину строки (это внутреннее хранение). В Postgres есть еще varchar без длины. там можно хранит строку Очень большую. Изучайте SQL
...
Рейтинг: 0 / 0
28.01.2014, 17:20:46
    #38540917
letete
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
char/varchar
ARTURVchar - задает точное число символов текстовой переменной, varchar(n) Задает максимальное значение символов в строке, но при этом может быть меньше.это как раз понятно, это написано на каждом заборе)), не ясноleteteтогда зачем тип char вообще существует?т.е. если его полностью заменяет varchar, то нет ли каких проблем использования varchar, связанных, как раз с переменностью ее длины?ARTURVИзучайте SQLвот именно этим и занимаюсь!
...
Рейтинг: 0 / 0
28.01.2014, 20:13:47
    #38541210
sp
sp
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
char/varchar
letete,

в последних статьях на PlanetPG писали что лучше вообще юзать text вместо varchar
а char нужен лишь там где точно известно сколько символов будет
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / char/varchar / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]