在 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);
这导致了我所从事的项目中的一些命名不一致,并引发了以下问题:
有没有一种简单的方法可以将一个约束添加到一个现存表中,并使用在创建表时添加该约束时将会接收到的名称?
如果没有,是否应该完全避免默认名称以防止不一致?