@romaro

Можно ли обновлять композитные типы в Postgres?

Например, я могу добавить новое значение в уже существующий Enum тип без необходимости пересоздавать его (и, как следствие, каскадно пересоздавать все зависимые от него объекты).

А можно ли добавить новую колонку в композитный тип, который уже используется в БД? Или только через пересоздание?

Или хотя бы модифицировать имя уже существующей колонки.
  • Вопрос задан
  • 89 просмотров
Решения вопроса 1
Melkij
@Melkij
PostgreSQL DBA
Эти две команды именно про enum:
ALTER TYPE name ADD VALUE [ IF NOT EXISTS ] new_enum_value [ { BEFORE | AFTER } neighbor_enum_value ]
ALTER TYPE name RENAME VALUE existing_enum_value TO new_enum_value

Вот удаления значения из enum нет.

Команды ADD/DROP/ALTER/RENAME ATTRIBUTE там же - это как раз про композитные типы. Уже используемые менять можно.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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