172 похожих чатов

Всем привет, подскажите могут быть какие-то проблемы если в качестве

ключа использовать char фиксированой длины ? например есть таблица стран, хочу в качестве ключа использовать iso3 код страны ( например rus, eng, usa и т.д ), удобно ссылаться из других таблиц, сразу можно выбрать без джойна...есть какие-то подводные камни ?

21 ответов

18 просмотров

Ну с текущей геополитикой я бы не рисковал

подводные камни тут что всё равно надо констрейнт ставить , т к никто не мешает вставить туда однобуквенное значение (ну дополнится оно пробелами, и что?),а раз всё равно констрейнт ставить,то и разницы с банальным text уже фактически нет

P
В размере разница будет

и не факт,что в пользу char(N) ;)))

Morruth🏴‍☠️
и не факт,что в пользу char(N) ;)))

Человек хочет юзать стабильно 3 символа. Если писать в тексто то такая строка будет 4 бита, если в чар 3,то всегда 3

камни такие что данная субд не использует char(n) как инструкцию к созданию кортежей фиксированной длины, так что это не инструкция по формату данных, а констрейнт. Констрейнт лучше сделат явно и указать ему какие значения он может принимать. Либо сделать это на клиенте, если это удобнее и в задачи базы такой контроль не входит.

Morruth🏴‍☠️
3 символа в 4 _бита_? 🥹

Почитай в доке про текст

да нет никаких проблем, если это ключ - то какая разница

P
Человек хочет юзать стабильно 3 символа. Если писа...

https://wiki.postgresql.org/wiki/Don%27t_Do_This#Don.27t_use_char.28n.29

Yaroslav Schekin
https://wiki.postgresql.org/wiki/Don%27t_Do_This#D...

В данном конкретном случае норм. Там всегда будет ровно 3 однобайтовых символа.

Не будет. Я пережил много классификаторов общероссийских и мировых

Sergey Bezrukov
В данном конкретном случае норм. Там всегда будет...

вот только почему-то занимать они будут 28 байт, а сама колонка 4 ) в случае со smallint было бы 2.

Konstantin Zaitsev
Изменения приведите список

Причём тут изменения? Будет у вас целочисленный идентификатор - не будет изменений что ли.

Sergey Bezrukov
Причём тут изменения? Будет у вас целочисленный ид...

будут изменения в словаре, это не потянет каскадные апдейты. С enum впрочем тоже, еще и удобно будет отображаться.

Похожие вопросы

Обсуждают сегодня

Мдя, прикол, боевая сборка запускается (именно под отладчиком) после F9 примерно полторы минуты (97 секунд если быть точным). Начал копать - проблема детектится сразу - зависа...
Александр (Rouse_) Багель
38
now Linux kernel development is becoming a dictatorship group: https://www.youtube.com/watch?v=xPF2NSFvNCc
Sharuzzaman Ahmat Raslan
23
Здравствуйте, вопрос по структурам данных. Были у вас случаи, когда пришлось писать деревья или двунаправленные списки?
/ /
50
Ок. Где достать 11 версию дельфи. На офф сайте ссылки на неё нет... Какие есть варианты?
Serg Vish
19
привет всем. Народ, кто-нибудь работал с мультипоточностью? Где посмотреть/ что почитать посоветуете? В идеале чтоб материал был максимально сжатый, времени читать например в...
Serg Vish
18
Всем привет! Скажите, никто не пытался уменьшить размер процесса ssl, которые ассоциируется с открытым соединением (не помню точное название этого процесса, но там была какая-...
Алексей
20
This is a big issue. Just by being a citizen of a country, you are denied to contribute to Open Source software: https://youtu.be/L5Ec5jrpLVk?si=1iIuHnMPbCB4anV-
Sharuzzaman Ahmat Raslan
72
а проверьте, собирается ли у кого сейчас транк лазаря через делюкс? у меня вот: fpcupdeluxe: info: Lazarus Native Installer (BuildModuleCustom: UserIDE): LazBuild: building Us...
Iluha Companets
20
добрый день. возможно ли изменить цвет окон лазаруса? Как?
Budemposmotret
35
А какие существуют способы обработки ошибок выделения памяти в ядре? Т.е., допустим, есть функция, которая возвращает адрес свободной страницы в физической памяти и диапазон в...
disba1ancer
51
Карта сайта