解说SQL与Oracle外键束厄窄小中的级联删除

本文介绍了SQL与Oracle数据库中实现外键约束的方法,包括级联删除与级联更新的具体应用,并提供了创建表及设置外键约束的示例。



   来源:赛迪网    作者:Byron

这篇文章首要引见了SQL与Oracle外键束厄窄小中的级联删除,更多内容请参考下文:

比来软件细碎中要删除一笔记实,就要接洽关系到同时删除良多多少张表,它们之间还存在着束厄窄小相干.以是考虑到在创建表时加上束厄窄小相干,详细内容如下:

SQL的外键束厄窄小可以完成级联删除与级联更新;

ORACLE则只充许级联删除。

SQL级联删除与级联更新利用格局:

CREATE TABLE A001(ID INT PRIMARY KEY,NAME VARCHAR(20))

CREATE TABLE A002(ID INT REFERENCES A001(ID)ON DELETE CASCADE ON UPDATE CASCADE,AGE TINYINT)

ORACLE级联删除利用格局:

CREATE TABLE A001(ID INT PRIMAY KEY,NAME VARCHAR2(20))

CREATE TABLE A002(ID INT REFERENCES A001(ID)ON DELETE CASCADE,AGE NUMBER(2,0))

--------------

CREATE TABLE groups

(

id VARCHAR2(16) CONSTRAINT pk_groupid PRIMARY KEY,

name VARCHAR2(32),

description VARCHAR2(50)

)

TABLESPACE userspace;

CREATE TABLE usringrp

(

group_id VARCHAR2(16) CONSTRAINT fk_uing_grpid

REFERENCES groups(id)

ON DELETE CASCADE,

user_id VARCHAR2(16)

)

TABLESPACE userspace;

---------------

PowerDesigner

参照完备性束厄窄小

限定(Restrict)。不允许举办改削或删除操纵。若改削或删除主表的主键时,如果子表中存在子记实,细碎将孕育产生一个错误提醒。这是缺省的参照完备性设置。

置空(Set Null)。如果外键列允许为空,若改削或删除主表的主键时,把子表中参照的外键列设置为空值(NULL)。

置为缺省(Set Default)。如果指定了缺省值,若改削或删除主表的主键时,把子表中参照的外键设置为缺省值(Default)。

级联(Cascade)。把主表中主键改削为一个新的值时,照应改削子表中外键的值;大概删除主表中主键的记实时,要照应删除子表中外键的记实




版权声明: 原创作品,允许转载,转载时请务必以超链接方式标明文章 原始因由 、作者信息和本声明。否则将究查法律责任。

转载于:https://www.cnblogs.com/zgqjymx/archive/2011/03/07/1973863.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值