要允许循环引用,您需要可延迟的约束:
ALTER TABLE DEPARTAMENTOS ADD ConSTRAINT FK_DEPT_EMP FOREIGN KEY (numDirect) REFERENCES EMPLEADOS(numEmpl) DEFERRABLE INITIALLY DEFERRED ;ALTER TABLE EMPLEADOS ADD ConSTRAINT FK_EMP_DEPT FOREIGN KEY (numDept) REFERENCES DEPARTAMENTOS(numDept) DEFERRABLE INITIALLY DEFERRED ;
在 事务结束时 检查可延展性约束;在提交时间之前,允许存在虚假的 无效数据库状态
(在原始问题中:两个插入语句之间)。但是语句必须在事务内部,因此语句应包含在
BEGIN [WORK];和中
COMMIT [WORK];。



