alter table new_emp add constraint fk_dept_no foreign key(deptno) references new_dept(deptno) deferrable initially immediate; 中deferrable initially immediate具体是什么意思?请信息解释一下!

解决方案 »

  1.   

    alter table new_emp add constraint fk_dept_no foreign key(deptno) references new_dept(deptno) deferrable initially immediate; 中deferrable initially immediate具体是什么意思?请详细解释一下!
      

  2.   

    [ NOT ] DEFERRABLE 
    这个选项控制该约束是否可以推迟到事务的结尾. 如果 DEFERRABLE,SET CONSTRAINTS ALL DEFERRED 将导致只是在事务的结束时才检查外键. 缺省是 NOT DEFERRABLE. INITIALLY checktime 
    checktime 有两个可能的值用以声明检查约束的缺省时间. 
    DEFERRED 
    只在事务结尾检查约束. IMMEDIATE 
    在每条语句(结尾)检查约束.这是缺省. 
      

  3.   

    老师说开始时是每增加一条记录时就检查,可以改为最后提交时检查。我还不太明白,怎么改为最后提交时检查。
    alter table new_emp disable constraint ck_sal和set constraint fk_dept_no deferred中disable和deferred有什么区别?
      

  4.   

    disable表示约束条件不可用,而deferred表示约束是延时检查的,也就是在提交时进行完整性检查