189 8069 5689

oracle怎么关联删除 oracle 删除关联表的数据

Oracle外键的相关约束中级联删除的方案

SQL和 Oracle外键的相关约束中的级联删除 我们在相关的系统中如果你要删除相关记录 我们就要关联一起删除N多张表 同时它们之间还存在着相互约束的关系 所以考虑到在创建表时加上约束关系

专注于为中小企业提供成都网站设计、成都网站制作、外贸网站建设服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业晋安免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了数千家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

详细内容如下:

SQL的Oracle外键约束可以实现级联删除与级联更新;Oracle 则只充许级联删除

SQL级联删除与级联更新使用格式

CREATE TABLE A (ID INT PRIMARY KEY NAME VARCHAR( ))

CREATE TABLE A (ID INT REFERENCES A (ID)ON DELETE CASCADE ON UPDATE CASCADE AGE TINYINT)

Oracle 级联删除使用格式

CREATE TABLE A (ID INT PRIMAY KEY NAME VARCHAR ( ))

CREATE TABLE A (ID INT REFERENCES A (ID)ON DELETE CASCADE AGE NUMBER( ))

CREATE TABLE groups

(

id VARCHAR ( ) CONSTRAINT pk_groupid PRIMARY KEY

name VARCHAR ( )

description VARCHAR ( )

)

TABLESPACE userspace;

CREATE TABLE usringrp

(

group_id VARCHAR ( ) CONSTRAINT fk_uing_grpid

REFERENCES groups(id)

ON DELETE CASCADE

user_id VARCHAR ( )

)

TABLESPACE userspace;

PowerDesigner

参照完整性约束

限制(Restrict) 不允许进行修改或删除操作 若修改或删除主表的主键时 如果子表中存在子记录 系统将产生一个错误提示 这是缺省的参照完整性设置

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

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

级联(Cascade) 把主表中主键修改为一个新的值时 相应修改子表中Oracle外键的值 或者删除主表中主键的记录时 要相应删除子表中外键的记录

lishixinzhi/Article/program/Oracle/201311/17613

oracle 删除关联表数据

设定dept表deptno列为主键。

alter table dept add constraint pk_deptno primary key (deptno);

在emp表deptno列上建立外键引用dept表deptno,指定外键类型为级联删除。

alter table emp add constraint fk_deptno foreign key (deptno) references dept(deptno) on delete cascade;

这样删除dept表 只需:delete from dept where city='shanghai'; 就可以自动删除对应emp表内容。

oracle删除关联表的数据,如何删除啊!下面是我写的SQL,不知道哪里出问题了,就是运行不了!

你这个写法有问题,oracle不允许这样删除,如果想级联删除有两个方法实现:方法一:触发器解决,方法二:修改你的外键设置,达到级联删除的目的。如果不用级联删除的话就只有一个表一个表的删除,先删除contactcomm表再删除contact 表。

oracle中用一条语句,多表关联删除怎么写啊?

修改你的外键设置,达到级联删除的目的,具体实现如下:

a)先查询出EMP表和POS表中 外键的名称(如果你知道 外键名这一步可以省略)

select CONSTRAINT_NAME,TABLE_NAME from user_constraints where CONSTRAINT_TYPE ='R' and TABLE_NAME in('EMP','POS');

b)删除EMP表和POS表上的外键后 重新建立允许级联删除的外键模式

alter table EMP drop constraint 外键名;

alter table POS drop constraint 外键名;

alter table EMP add constraint 外键名 foreign key(DEPT_NO) references DEPT(DEPT_NO) on delete cascade;

alter table POS add constraint 外键名 foreign key(DEPT_NO) references DEPT(DEPT_NO) on delete cascade;

这样删除关联删除是自动的


网站标题:oracle怎么关联删除 oracle 删除关联表的数据
分享地址:http://cdxtjz.cn/article/hgceec.html

其他资讯