powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / varchar vs text?
9 сообщений из 9, страница 1 из 1
varchar vs text?
    #39284794
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Прочитал, что нет смысла использовать varchar , тем более с указанной длиной, рекомендуют использовать text и не париться.

Это так и есть, моэно забыть про varchar?
...
Рейтинг: 0 / 0
varchar vs text?
    #39284816
ОКТОГЕН
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ролг Хупин, в принципе пофигу.
Но если собираетесь индексировать LIKE запросы,
то по этим полям лучше разумное ограничение поставить.
...
Рейтинг: 0 / 0
varchar vs text?
    #39284830
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ОКТОГЕНРолг Хупин, в принципе пофигу.
Но если собираетесь индексировать LIKE запросы,
то по этим полям лучше разумное ограничение поставить.

а каким образом можно индексировать LIKE запросы?
...
Рейтинг: 0 / 0
varchar vs text?
    #39284966
Фотография vyegorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ролг Хупин,

text не имеет ограничения длины (как тип), в остальном вся внутренняя обработка одинакова. Тут детальный разбор от Депеша .

Я предпочитаю просто текст, чтобы не заморачиваться — хватит ли 20 символов для имени?..
Т.е. модель данных говорит, что хранить нужно имя — вот и не стоит ограничивать пользователей по воле разработчиков.
Если же ограничение идёт от бизнес логики, то я обычно вешаю CHECK ограничение.

При индексировании текстовых значений нужно иметь в виду, что ключ не может превышать 2713 байт (не символов). Связано с внутренней структурой индекса (связные списки), требующей наличия нескольких (не помню сколько — копать лень) элементов в одной странице индекса. Поэтому, если у вас будут большие значения, то индекс может не построиться.

Для индексации LIKE выражений лучше всего подойдут триграммы .
...
Рейтинг: 0 / 0
varchar vs text?
    #39284987
Павел Лузанов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Депеш не написал о том, что для столбца типа text всегда создается toast таблица. А varchar небольшой длины останется в основной таблице.
Это может иметь или не иметь значения.
...
Рейтинг: 0 / 0
varchar vs text?
    #39284989
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Павел ЛузановДепеш не написал о том, что для столбца типа text всегда создается toast таблица. А varchar небольшой длины останется в основной таблице.
Это может иметь или не иметь значения.

если text короткий то он тоже останется в основной таблице.
А toast таблица будет создана по моему даже для varchar(1).


--
Maxim Boguk
www.postgresql-consulting.ru
...
Рейтинг: 0 / 0
varchar vs text?
    #39284999
Павел Лузанов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Maxim Boguk,
если text короткий то он тоже останется в основной таблице.
Да, короткий останется.
А toast таблица будет создана по моему даже для varchar(1).
Нет, не будет.
...
Рейтинг: 0 / 0
varchar vs text?
    #39285223
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Павел ЛузановMaxim Boguk,
если text короткий то он тоже останется в основной таблице.
Да, короткий останется.
А toast таблица будет создана по моему даже для varchar(1).
Нет, не будет.

А если в таблице поле с типом text содержит и короткие, и длинные значения?
Тогда короткие остаются на месте, а для длинных будет создана toast таблица?
...
Рейтинг: 0 / 0
varchar vs text?
    #39285268
Павел Лузанов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ролг Хупин,

Для text таблица toast сразу создается вместе с основной.
Но в контексте выбора varchar vs text Максим правильно навел на мысль, что таблица toast не причем.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / varchar vs text?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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