我有一张表有以下的情绪
CREATE TABLE MyTable
(
ID INTEGER DEFAULT(1,1),
FirstIdentifier INTEGER NULL,
SecondIdentifier INTEGER NULL,
--.... some other fields .....
)
现在插入一个值时,FirstIdentifier和SecondIdentifier之间的列之一应该是 不是NULL。无论如何通过架构强制执行它?
答案 0 :(得分:23)
CHECK (FirstIdentifier IS NOT NULL OR SecondIdentifier IS NOT NULL)
虽然CHECK约束是表的一部分(因此也是“模式”?),但它们可能不符合所需的定义。上面的CHECK不是互斥的,但可以改为这样。
快乐的编码。