При створенні таблиці в PostgreSQL будуть призначені імена обмежень за замовчуванням, якщо не передбачено:
CREATE TABLE example (
a integer,
b integer,
UNIQUE (a, b)
);
Але використання ALTER TABLE
для додавання обмеження, здається, ім'я є обов'язковим:
ALTER TABLE example ADD CONSTRAINT my_explicit_constraint_name UNIQUE (a, b);
Це спричинило деякі невідповідності імен у проектах, над якими я працював, і викликає такі запитання:
Чи існує простий спосіб додати обмеження до існуючої таблиці з іменем, яке воно отримало б, якби додано під час створення таблиці?
Якщо ні, то чи слід взагалі уникати імен за замовчуванням, щоб запобігти невідповідностям?