Превосходящий дизайн будет иметь столбцы тип данных text
, допускающие неограниченную длину текста.Если вам действительно нужно установить максимальную длину, добавьте ограничение CHECK
, например:
ALTER TABLE tbl ADD CONSTRAINT tbl_col_len CHECK (length(col) < 41);
. Вы можете свободно изменять проверочное ограничение, не связываясь со столбцом или его типом данных.
То же самое относится и к доменам.Если вы применяете ограничение длины для домена с проверочным ограничением, вы можете свободно изменить его (конечно, все столбцы, использующие домен, должны соответствовать новым критериям. Для всех, насколько я знаю, вы не можете так же легко изменить базовый тип данных.
Имея такую настройку, как ваша, вы также можете создать дамп базы данных, взломать дамп с помощью глобального поиска и замены для обмена всеми вхождениями домена (при условии, что все поля, использующие домен, соответствуют критериям) иперезагрузите дамп.