当创建PostgreSQL中的表,如果没有提供默认的约束名称将分配: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);
这导致了我工作过的项目中一些命名不一致,并提示以下问题:
有没有一种简单的方法来添加一个约束到一个现存的表,如果在表创建期间添加它将会收到它的名字?
如果不是,应该完全避免默认名称以防止出现不一致吗?
我已成为一个惯例,以避免违约的名字因为这个原因 - 你结束了在那里的每一个部署的限制有不同的名称的情况 – 2010-11-05 16:39:48