Access数据库实用教程电子教案第四章建立表之间的的关系.ppt
13页第第4 4章章 建立表之间的关系建立表之间的关系Ø4.1 4.1 主键与外键主键与外键Ø4.2 4.2 表的关联类型表的关联类型Ø4.3 4.3 定义表之间的关系定义表之间的关系Ø4.4 4.4 参照完整性参照完整性 .4.1 4.1 主键与外键主键与外键 关系就是表之间的联系,在Access中,是在两表的公共字段间创建的联系性关系通过匹配键字段中的数据来完成,键字段通常是两个表中使用相同名称的字段 1.主键〔Primary Key) 是由一个或一组字段组成,这些字段的值对每条记录来说必须是唯一的每张表必须有一个主键,并且主键值不能为空〔Null) .((2 2〕外键〔〕外键〔Foreign KeyForeign Key)) 如果表中的一个字段是另一个表的主键字如果表中的一个字段是另一个表的主键字段,那么这个字段在本表中被称为外键段,那么这个字段在本表中被称为外键4.2 4.2 表的关联类型表的关联类型 表间的关系类型有三种:(1〕一对一关系 在一对一关系中,A表中的每一记录在B表中仅有一个记录与之匹配;反之也如此。
(2〕一对多关系 一对多关系指的是建立关系的两个表中,A表中的一个记录能够与B表中的多个记录相匹配,但是在B表中的一个记录仅能与A表中的一个记录匹配 .((3 3〕多对多关系〕多对多关系 多对多关系指的是建立关系的两个表中,多对多关系指的是建立关系的两个表中,A A表中的一个记录能够与表中的一个记录能够与B B表中的多个记录相表中的多个记录相匹配,同时,匹配,同时,B B表中的一个记录也与表中的一个记录也与A A表中的表中的多个记录匹配多个记录匹配 一对一 一对多 多对多 . 一般情况下,多对多关系是通过定义第一般情况下,多对多关系是通过定义第三个表三个表(起联接作用的表起联接作用的表)实现的它的主实现的它的主键包含两个字段,即来源于另外两个表的键包含两个字段,即来源于另外两个表的外键多对多关系实际上是通过与第三个外键多对多关系实际上是通过与第三个表建立的两个一对多关系实现的表建立的两个一对多关系实现的 【例【例4-1】通过增加】通过增加“成果〞表,在成果〞表,在“学生学生〞和〞和“课程〞之间建立多对多的关系。
如课程〞之间建立多对多的关系如下图所示〔图下图所示〔图4-3).4.3 4.3 定义表之间的关系定义表之间的关系 【例【例4-2】完成上图〔图】完成上图〔图4-3〕中〕中“学生〞表与学生〞表与“成果〞的一对多关系的建立成果〞的一对多关系的建立 说明:说明: 联接是表或查询中的字段与另一个表或查询联接是表或查询中的字段与另一个表或查询中具有同一数据类型的字段之间的关联,联接表中具有同一数据类型的字段之间的关联,联接表明数据之间的关联方式明数据之间的关联方式 联接类型有三种:联接类型有三种: 1.内部联接内部联接 只包含来自两个表的联接字段相等处的行只包含来自两个表的联接字段相等处的行 . 2. 2.左外部联接左外部联接 包包含含左左表表中中的的所所有有记记录录和和右右表表中中联联接接字字段相等的那些记录段相等的那些记录 3. 3.右外部连接右外部连接 包包含含右右表表中中的的所所有有记记录录和和左左表表中中联联接接字字段相等的那些记录段相等的那些记录【例【例4-34-3】假设有表】假设有表R R 和和S S,分别如下:采用三种,分别如下:采用三种联接方式联接,查看不同的联接结果。
联接方式联接,查看不同的联接结果abcA1 B1C1A2 B2C2A3 B3C3adeA1 D1E1A4 D4E4RSabcadeA1B1C1A1D1E1abcadeA1B1C1A1D1E1A2B2C2A3B3C3R和和S进行内联接的结果为进行内联接的结果为 ::abcadeA1B1C1A1D1E1A4D4E4R和和S进行左外部联接的结果为:进行左外部联接的结果为: R和和S进行右外部联接的结果为:进行右外部联接的结果为: .4.4 4.4 参照完整性参照完整性 Ø4.4.1 参照完整性参照完整性 Ø 参照完整性是一个规则系统,参照完整性是一个规则系统,Microsoft Access 使用这个系统来确保使用这个系统来确保相关表中记录之间关系的有效性,并且不会相关表中记录之间关系的有效性,并且不会意外地删除或更改相关数据意外地删除或更改相关数据Ø当实行参照完整性后,必须遵守下列规则:当实行参照完整性后,必须遵守下列规则:Ø 不能在相关表的外部键字段中输入主表的主不能在相关表的外部键字段中输入主表的主键中不存在的值键中不存在的值Ø 如果在相关表中存在匹配的记录,不能从主如果在相关表中存在匹配的记录,不能从主表中删除这个记录。
表中删除这个记录Ø 如果某个记录有相关的记录,则不能在主表如果某个记录有相关的记录,则不能在主表中更改主键值中更改主键值Ø4.4.2 级联更新和级联删除级联更新和级联删除 Ø “级联更新相关字段〞是指当用级联更新相关字段〞是指当用户修改户修改“主表〞中关联字段的值时,主表〞中关联字段的值时,Access会自动地修改会自动地修改“从表〞中相关从表〞中相关记录的关联字段的值记录的关联字段的值 Ø “级联删除相关字段〞是指当用户级联删除相关字段〞是指当用户删除删除“主表〞某条记录时,主表〞某条记录时,Access会会自动地删除自动地删除“从表〞中的相关记录从表〞中的相关记录Ø小结:小结:Ø理解主键和外键的含义表中确定为主键理解主键和外键的含义表中确定为主键的字段,的字段,AccessAccess将不允许在该字段中输入将不允许在该字段中输入重复值或重复值或NullNull值Ø掌握创建关系的方法和关系的类型及联接掌握创建关系的方法和关系的类型及联接类型Ø理解创建关系时实施参照完整性的作用以理解创建关系时实施参照完整性的作用以及级联更新和级联删除的作用及级联更新和级联删除的作用。





