网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > 数据库 > Oracle教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
数据库:数据库教程,数据库技巧,Oracle教程,MySQL教程,Sybase教程,Access教程,DB2教程,数据库安全,数据库文摘
本月文章推荐
.象ROWNUM取得查询记录集第M到N条.
.怎样修改查看Oracle字符集及怎样.
.导入数据后编译所有对象的脚本.
.如何在less环境切换至vi环境.
.sendmail支持的操作系统有哪些.
.数据文件internal的内部结构分析.
.如何恢复数据库的内容.
.dual表是什么表?.
.如何查看数据文件是否自动扩展?.
.修改ORACLE7数据库maxdatafiles参.
.Oracle数据复制技术有效解决数据.
.关于Oracle数据库中密码安全管理.
.Application Server产品简介.
.讲解Oracle表碎片的具体起因及解.
.Oracle数据库中分区表的操作方法.
.ORACLE ORA-1693错误以及表和索.
.在Oracle中重编译所有无效的存储.
.Oracle9i如何支持动态重配置.
.利用Oracle rownum完成行转列一例.
.了解Oracle Developer.

讲解SQL与Oracle外键约束中的级联删除

发表日期:2008-5-29


这篇论坛文章(赛迪网技术社区)主要介绍了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)。把主表中主键修改为一个新的值时,相应修改子表中外键的值;或者删除主表中主键的记录时,要相应删除子表中外键的记录。

上一篇:Oracle的共享封锁 独占封锁和共享更新封锁 人气:922
下一篇:一个完整的Oracle rman备份恢复参考示例 人气:805
浏览全部Oracle的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐