Oracle级联删除可以使用触发器来实现,但是实现起来会比较麻烦,最简单的就是直接建立表的主外键关系,给列设置级联删除。
——创建了CLASS表,并设置ID字段为主键。
-- Create table
- create table CLASS
- (
- ID VARCHAR2(2) not null,
- CLASS_NAME VARCHAR2(20)
- )
- alter table CLASS
- add constraint PK_CLASS primary key (ID)
——创建了STUDENTS表,并设置ID字段为主键,CLASS_ID为外键且有级联删除。
-- Create table
- create table STUDENTS
- (
- ID VARCHAR2(4) not null,
- CLASS_ID VARCHAR2(2) not null,
- STU_NAME VARCHAR2(20),
- STU_AGENUMBER
- )
- alter table STUDENTS
- add constraint PK_STU primary key (ID)
- alter table STUDENTS
- add constraint FK_STU foreign key (CLASS_ID)
- references CLASS (ID) on delete cascade;
这样删除了班级ID,所属的学生都会被删除。这就实现了Oracle的级联删除。
本文就介绍到这里,如果想了解更多关于Oracle数据库的知识,可以看一下这里的文章:http://database.51cto.com/oracle/。
【编辑推荐】