码迷,mamicode.com
首页 > 数据库 > 详细

ORACLE外键约束(FORIGEN KEY)

时间:2017-12-16 23:09:30      阅读:226      评论:0      收藏:0      [点我收藏+]

标签:int   mil   rac   har   另一个   唯一性   默认   ble   强制   

ORACLE外键约束

  1. 外键约束的定义是,让另一张表的记录来约束自己。这里的另一张表就是主表。
  2. 当主表的记录删除时,我们可以跟随主表删除记录(ON DELETE CASCADE)、或者相应字段设置为空(ON DELETE SET NULL)、或者不允许删除(默认)。

    a) 注意一:当主表被级联删除(DORP TABEL WEN CASCADE CONSTRAINTS)时,从表建立的与主表关联的外键约束将被删除,从表数据不会发生变化。

    1.   假设从表为另一个表外键约束对应的主表,该外键约束关系不会受到影响。

    b) 注意二:从表外键约束指向的主表字段,必须是唯一性约束或主键约束的字段。

    1.     因为,当外键约束指向的主表记录有重复项时,删除其中之一时,从表伴随操作不明朗。

 

创建表时创建外键语法:

PRIMARY[?pra?m?ri] 主要的、关键

FOREIGN[?f?r?n] 外键

REFERENCES[?refr?ns]

CONSTRAINT [k?n?stre?nt]:约束、限制、强制

 

CREATE TABLE WEN

(

MY CHAR(10) NOT NULL,

LOVE CHAR(8) NOT NULL,

PRIMARY KEY (MY),

CONSTRAINT WEN_FK FOREIGN KEY (MY,LOVE)

REFERENCES GUOGUO(MY,LOVE) ON DELETE CASCADE --当主表记录删除时,从表记录伴随删除

)

ON DELETE SET NULL;

当主表记录删除时,设置从表数据为NULL,注意,从表字段必须允许为NULL

不写ON语句时,默认不允许删除主表记录。

 

 

修改表时追加外键:

ALTER TABLE WEN

ADD CONSTRAINT WEN_FK FOREIGN KEY(MY,LOVE) REFERENCES GUOGUO(MY,LOVE) ON DELETE CASCADE

 

ALTER TABLE GUOGUO ADD CONSTRAINT GUOGUO_FK FOREIGN KEY(MY,LOVE) REFERENCES

WEN(MY,LOVE) ON DELETE SET NULL

 

ORACLE外键约束(FORIGEN KEY)

标签:int   mil   rac   har   另一个   唯一性   默认   ble   强制   

原文地址:http://www.cnblogs.com/gongjin/p/8047904.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!