快速掌握对DB2创建外键时选项的操作方案

以下的文章主要向大家讲述的是快速掌握对DB2创建外键时选项的方案,其中包括测试表的正确创建,对On Delete 选项的介绍,以及其他内容的描述,以下就是文章的主要内容的描述,望大家有所收获。

成都创新互联公司长期为上千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为新和企业提供专业的网站设计、成都做网站新和网站改版等技术服务。拥有十多年丰富建站经验和众多成功案例,为您定制开发。

创建外键时的选项:

1.创建测试表:

 
 
 
 
  1. drop table student;  
  2. drop table class;  
  3. drop table student_class;  
  4. Create table student(student_id integer not null,student_name varchar(200),
     CONSTRAINT P_KEY_1 primary key (student_id)) in luzl_32k_tb index in luzl_32k_tb ;  
  5. Create table class(class_id integer not null,class_name varchar(200), CONSTRAINT P_KEY_2 primary key (class_id)) in luzl_32k_tb index in luzl_32k_tb ;  
  6. Create table student_class(student_class_id integer,student_id integer,class_id integer) in luzl_32k_tb index in luzl_32k_tb;  
  7. alter table student_class add constraint if_class foreign key(class_id) references class(class_id) ON DELETE cascade ON UPDATE RESTRICT;  
  8. alter table student_class add constraint if_student foreign key(student_id) references student(student_id) ON DELETE cascade ON UPDATE RESTRICT;  
  9. Insert into student(student_id,student_name) values(1,'luzl');  
  10. Insert into class(class_id,class_name) values(1,'db2');  
  11. Insert into student_class(student_class_id,student_id,class_id) values(1,1,1);  

2.On Delete 的选项有

Restrict/no action/cascade/set null.其中cascade选项指定的话,如果删除父记录,依赖于他的子记录也会自动删除.相当于级联删除.如果指定no action和cascade都会报错,因为还有子记录所以无法删除该记录.set nul允许删除父记录并且l会将子表中与父表关联的字段设置为null.

3.On Update 只有两个选项 no action/restrict.它们在更新和删除时并没有区别:如果与子表关联不允许删除.

4.另外还需要注意一点,父表中的字段必须是主键,才能做为子表的外键。以上的相关内容就是对快速掌握DB2创建外键时的选项的介绍,望你能有所收获。

上述的相关内容就是对DB2创建外键时的选项的描述,希望会给你带来一些帮助在此方面。

【编辑推荐】

  1. DB2 多分区数据库备份的正确操作流程演示
  2. DB2 存储过程的异常处理器类型有几种?
  3. 对DB2 增量备份的正确运用描述
  4. DB2数据库进行备份在AIX如何操作?
  5. DB2 并行版本中的查询优化登峰造极!

网站名称:快速掌握对DB2创建外键时选项的操作方案
网站地址:http://www.hantingmc.com/qtweb/news23/490523.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联