第三课数据完整性之参照完整性的实现(1).ppt_第1页
第三课数据完整性之参照完整性的实现(1).ppt_第2页
第三课数据完整性之参照完整性的实现(1).ppt_第3页
第三课数据完整性之参照完整性的实现(1).ppt_第4页
第三课数据完整性之参照完整性的实现(1).ppt_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、欢迎进入刘天天俱乐部!,参照完整性的实现,对两个相关联的表(主表与从表)进行数据插入和删除时,通过参照完整性保证它们之间数据的一致性。 定义表间参照关系:先定义主表主键(或唯一键),再定义从表外键约束。,关系图,1使用企业管理器定义表间的参照关系 例如要建立XSDA表与XSCJ表之间的参照关系,操作步骤如下: (1)首先定义主表的主键,在此定义XSDA表中学号字段为主键。 (2)利用“关系图”或“表设计器属性关系”定义从表外键 应用1:当向从表中添加学生时,自动检查主表中是否存在此记录。若存在,允许添加;否则,不允许。 应用2:选择“对INSERT和UPDATE强制关系”复选框,若在主表中删除

2、、修改记录,从表中记录也相应被删除、修改;若在从表中删除记录,主表中记录不变;不允许修改从表中的外键。 2使用企业管理器删除表间的参照关系,外键约束,3使用T-SQL语句定义表间的参照关系 先定义主表主键(或唯一键),再对从表定义外键约束。 (1)创建表的同时定义外键约束 CREATE TABLE 表名 /*指定表名 (字段名 数据类型 FOREIGN KEY REFERENCES 主表 (主键) ,n) /*n表示可定义多个字段 说明: FOREIGN KEY关键字指明该字段为外键, 课外阅读:,【例】在XS数据库中创建主表XSDA1,定义XSDA1.学号为主键,然后创建从表XSCJ1,定义

3、XSCJ1.学号为外键。 -定义主键 USE XS CREATE TABLE XSDA1 ( 学号 char(6) NOT NULL CONSTRAINT xh_pk PRIMARY KEY, 姓名 char(8) NOT NULL, 性别 bit NOT NULL , 系名 char(10) NOT NULL, 出生日期 smalldatetime NOT NULL, 民族 char(4) NOT NULL, 总学分 tinyint NULL, 备注 text NULL ) GO -定义外键 CREATE TABLE XSCJ1 ( 学号 char(6) NOT NULL FOREIGN K

4、EY REFERENCES XSDA(学号), 课程编号 char(3) NOT NULL, 成绩 tinyint )(课外阅读:),外键约束,(2)通过修改表定义外键约束 ALTER TABLE 表名 ADD CONSTRAINT 约束名 FOREIGN KEY (column ,n) -外键 REFERENCES 主表 (主键) 说明: FOREIGN KEY (column ,n)指定从表中外键的列名。 REFERENCES ref_table (ref_column,n) 指定主表及主键的列名。 课外阅读:,【例】 假设XS数据库中KCXX表为主表,KCXX.课程编号字段已经定义为主键

5、,XSCJ表为从表,要求将XSCJ.课程编号字段定义为外键。 USE XS ALTER TABLE XSCJ ADD CONSTRAINT kc_foreign FOREIGN KEY(课程编号) REFERENCES KCXX(课程编号) GO 课外阅读:,外键约束,4使用T-SQL语句删除表间的参照关系 删除表间的参照关系,实际上删除从表的外键约束即可。 当PRIMARY KEY约束由另一表的FOREIGN KEY约束引用时,不能删除被引用的PRIMARY KEY约束,要删除它,必须先删除引用的FOREIGN KEY约束。,【例】删除上例对XSCJ.课程编号字段定义的外键约束。 USE XS ALTER TABLE

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论