我有一个带有4列的表格
每列将是A,B,C,D
列A是主键。列B具有唯一的名称约束。
现在,我想删除列B的唯一约束,并通过组合列B,C和D给出唯一约束。因此,该表将只允许一行包含列B,C和D中的特定值。
如何给这种约束?
我尝试给复合唯一密钥,例如:
ALTER TABLE TABLENAME ADD CONSTRAINT CONSTRAINT_NAME UNIQUE (COLUMN_B, COLUMN_C, COLUMN_D)
但这是在检查是否存在任何约束,而不是在检查唯一键约束的组合。
在这些列上创建唯一键
ALTER TABLE YourTable add CONSTRAINT YourTable_unique UNIQUE (B, C, D);
Oracle / PLSQL:唯一约束