Oracle约束的属性


今天处理了一个由于约束插入数据失败的问题,处理时感到有些吃力,三天不练手生啊。在这里回忆一下。
Oracle数据库Constraint约束的四对属性:Deferrable/not deferrable, Deferred/immediate, enable/disable, validate/novalidate。

准备一下环境:
SQL> create table empx as select * from emp;

SQL> create table deptx as select * from dept;

SQL> alter table empx add constraint pk_empx primary key(empno);

SQL> alter table deptx add constraint pk_deptx primary key(deptno);

SQL> alter table empx add constraint fk_deptx foreign key (deptno) references deptx(deptno);

SQL> select * from deptx;

  1.    DEPTNO DNAME                   LOC  
  2. --------- ------------------------------------------ ---------------------------------------  
  3. 10 ACCOUNTING                     NEW YORK  
  4. 20 RESEARCH                   DALLAS  
  5. 30 SALES                      CHICAGO  
  6. 40 OPERATIONS                     BOSTON  

SQL> select * from empx;

  1.      EMPNO ENAME              JOB                    MGR HIREDATE       SAL   COMM     DEPTNO  
  2. ---------- ------------------------------ --------------------------- ---------- --------------- ---------- ---------- ----------  
  3.       7369 SMITH              CLERK                 7902 17-DEC-80      800            20  
  4.       7499 ALLEN              SALESMAN              7698 20-FEB-81         1600    300         30  
  5.       7521 WARD               SALESMAN              7698 22-FEB-81         1250    500         30  
  6.       7566 JONES              MANAGER               7839 02-APR-81         2975            20  
  7.       7654 MARTIN             SALESMAN              7698 28-SEP-81         1250   1400         30  
  8.       7698 BLAKE              MANAGER               7839 01-MAY-81         2850            30  
  9.       7782 CLARK              MANAGER               7839 09-JUN-81         2450            10  
  10.       7788 SCOTT              ANALYST               7566 19-APR-87         3000            20  
  11.       7839 KING               PRESIDENT              17-NOV-81         5000            10  
  12.       7844 TURNER             SALESMAN              7698 08-SEP-81         1500      0         30  
  13.       7876 ADAMS              CLERK                 7788 23-MAY-87         1100            20  
  14.       7900 JAMES              CLERK                 7698 03-DEC-81      950            30  
  15.       7902 FORD               ANALYST               7566 03-DEC-81         3000            20  
  16.       7934 MILLER             CLERK                 7782 23-JAN-82         1300            10  
  17.   
  18. 14 rows selected.  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 下一页

相关内容