zl程序教程

您现在的位置是:首页 >  数据库

当前栏目

一个利用Oracle表的主外键关系实现级联删除的实例

2023-03-31 11:10:54 时间

Oracle级联删除可以使用触发器来实现,但是实现起来会比较麻烦,最简单的就是直接建立表的主外键关系,给列设置级联删除。

——创建了CLASS表,并设置ID字段为主键。

-- Create table

  1. create table CLASS  
  2.  
  3. (  
  4.  
  5. ID VARCHAR2(2) not null,  
  6.  
  7. CLASS_NAME VARCHAR2(20)  
  8.  
  9. )  
  10.  
  11. alter table CLASS  
  12.  
  13. add constraint PK_CLASS primary key (ID) 

——创建了STUDENTS表,并设置ID字段为主键,CLASS_ID为外键且有级联删除。

-- Create table

  1. create table STUDENTS  
  2.  
  3. (  
  4.  
  5. ID VARCHAR2(4) not null,  
  6.  
  7. CLASS_ID VARCHAR2(2) not null,  
  8.  
  9. STU_NAME VARCHAR2(20),  
  10.  
  11. STU_AGENUMBER  
  12.  
  13. )  
  14.  
  15. alter table STUDENTS  
  16.  
  17. add constraint PK_STU primary key (ID)  
  18.  
  19. alter table STUDENTS  
  20.  
  21. add constraint FK_STU foreign key (CLASS_ID)  
  22.  
  23. references CLASS (ID) on delete cascade; 

这样删除了班级ID,所属的学生都会被删除。这就实现了Oracle的级联删除。

本文就介绍到这里,如果想了解更多关于Oracle数据库的知识,可以看一下这里的文章:http://database.51cto.com/oracle/

【编辑推荐】

  1. Oracle跟踪文件分析工具TKPROF使用简介
  2. Oracle数据库中Rank等函数的比较与选择
  3. 利用Sql Server将Excel中的数据导入Oracle
  4. 共享database独立Schema构建SAAS平台
  5. 环境变量导致ASP.Net无法连接Oracle的一个案例