我有一个有 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: Unique Constraints
关于sql - 如何为 Oracle 中的列组合提供唯一约束?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17343516/