Вие питате:
Има ли команда, която може да промени тази максимална дължина? Тази дължина същата ли е за други имена (колони, таблици и т.н.)?
Ръководството отговаря тук:
Системата използва не повече от
NAMEDATALEN-1
байтове от идентификатор; по-дълги имена могат да бъдат записани в команди, но те ще бъдат съкратени. По подразбиранеNAMEDATALEN
е 64, така че максималната дължина на идентификатора е 63 байтове. Ако това ограничение е проблематично, то може да бъде повишено чрез промяна наNAMEDATALEN
константа вsrc/include/pg_config_manual.h
.
Удебелен акцент мое.
Единственият начин да го промените е да хакнете изходния код и да прекомпилирате PostgreSQL.
Имената на домейни са идентификатори като всеки друг. Когато изпълнявам:
CREATE DOMAIN d_complement_activite_etablissement_or_even_loger_than_that AS text
Получавам това, което поръчах (тествано на PostgreSQL 8.4 - 11):
d_complement_activite_etablissement_or_even_loger_than_that
Следователно:трябва да има някакъв друг софтуер между вас и вашата база данни, който изрязва името.