操作要求:
在数据库“教学管理.accdb”,其中有四个表:“教师”、“学生”、“课程”、“选课成绩”。由于一名学生可以选修多门课程,而一门课程也可供多名学生选修,则课程与学生之间是多对多联系。一般将一个多对多联系拆分为两个一对多联系。
故进行如下操作
1、建立“学生”—“选课成绩”、“课程”—“选课成绩”之间的关系,
2、实施“参照完整性”,要求“级联更新”和“级联删除”。如下图
知识要点:
1、如何建立表之间的关系。
2、什么是参照完整性、级联更新、级联删除。
3、建立关系时,表中字段应满足的条件。
知识点说明:
通过对表的字段、字段数据类型、字段属性的设计,使得表作为一个实体集能够反应现实世界实体的基本特征,能够完整对某一类实体进行描述,保证了数据的完整性、一致性及兼容性。但是现实世界除了实体之外,还存在着实体与实体之间的联系。数据库必须正确的描述及表示这些联系,才能对现实实现进行准确的模拟。用表之间的关系来表示实体之间的联系。
打开数据库对象窗,现有表、及视图上方工具栏基本构成如下图。
1、打开关系视图。在工具栏中,点击“关系”按钮,打开如下关系视图:
2、向关系视图中添加要建立关系的表。在关系视图的空白区点击右键,在如下的右键菜单中选择“显示表”。
在“显示表”界面中,选中要建立关系的表,这里是“课程”、“选课成绩”、“学生”。点击“添加”,完成把表添加到关系视图中,如下右图
3、拖动字段,建立关系。在上右图中,用鼠标左键选中“课程”表中的“课程编号”,拖动到“选课成绩”表上方释放(即从“一”的一方,拖动到“多”的一方)。出现如下编辑关系界面:
选择“实施参照完整性”后,同时设定“级联更新相关字段”、“级联删除相关记录”,点击“创建”完成“课程—选课成绩”关系的建立。如下图。
下面对上图“编辑关系”内的相关选项进行说明:
(1)表与相关表:相关表是指拥有外键的表(这里是“选课成绩”),其“课程编号”在“课程”表中作为主键。“课程—选课成绩”关系是通过“课程”和“选课成绩”表中共有的“课程编号”字段联系起来而建立的。
(2)参照完整性:即要求外键的值必须在主键中已经存在。这里即要求“选课成绩”表中的“课程编号”的值必须是“课程”表中“课程编号”已经有了的值。
(3)级联更新相关字段:如果主键值更改了,则系统自动相应更改所有外键处引用的值。
(4)级联删除相关记录:如果删除主键(即删除课程表中的一门课程),则所有外键相关记录系统自动删除(即选课成绩表中相应课程记录)
更多信息,参看钟老师课堂内部教程或课件的数据库基础知识部分内容。
按照上面步骤,创建“学生-选课成绩”关系,这里关系的联系字段为“学生编号”。创建完关系后,注意对关系进行保存。如下图
4、删除关系操作。可以删除已经建立的关系,选中关系后点击右键,在弹出右键菜单中选择“删除”即可。如下图删除“学生-选课成绩”关系
5、隐藏或删除“关系”视图中显示的数据表。删除了“学生-选课成绩”关系后,“学生”表可从“关系”视图中删除掉。
首先选中“学生”表,右键菜单选择“隐藏表”,如下图:
6、关系与表字段。关系与创建关系的字段设置间存在着以下两方面约束:
(1)如果要创建关系的字段在主表中没有设置成主键或唯一索引,则不能通过该字段建立关系。如下图,取消了“课程”表中“课程编号”主键,在用“课程编号”与“选课成绩”表创建关系时,就会出现下方的提示。
通过上述图解,介绍了数据表之间创建关系、设定关系选项的基本方法。并对一些基本概念,注意要点进行了介绍。系统同学们注意理解,并进行测试。
本系列未完,待续!!!更多信息请进入“钟老师课堂”查阅。