首页 理论教育 如何在Access数据库中建立教师和课程表的多对多关系

如何在Access数据库中建立教师和课程表的多对多关系

时间:2023-11-05 理论教育 版权反馈
【摘要】:建立“教师”表和“课程”表之间的“多对多关系”。4)返回“关系”窗口,可以看到在两个表之间出现了一条加粗的关系连线,并且在“学院”表一方显示“1”,在“教师”表一方显示“∞”,表示“一对多关系”。

如何在Access数据库中建立教师和课程表的多对多关系

1.实验目的

熟练掌握建立表间关系、编辑表间关系的方法,透彻理解“实施参照完整性”的意义。

2.实验内容

(1)编辑“教师”表和“学院”表之间的关系,实施参照完整性。

(2)建立“教师”表和“课程”表之间的“多对多关系”。

(3)完成“教学管理”数据库7张表对象其余关系的建立。

(4)参照表3-8~表3-14,依次向7张表中录入数据。请实验者把每个表中的记录添加到10条以上。

3-8 “学院

978-7-111-45056-6-Chapter03-16.jpg

3-9 “班级

978-7-111-45056-6-Chapter03-17.jpg

3-10 “教师

978-7-111-45056-6-Chapter03-18.jpg

3-11 “课程

978-7-111-45056-6-Chapter03-19.jpg

3-12 “授课

978-7-111-45056-6-Chapter03-20.jpg

3-13 “学生

978-7-111-45056-6-Chapter03-21.jpg

3-14 “成绩

978-7-111-45056-6-Chapter03-22.jpg

3.思路分析

(1)“教师”表中设置来自“学院”表的“学院编号”查阅字段列,因此自动创建了关系,需要编辑表间关系,建立“一对多关系”。

(2)“教师”表和“课程”表之间的“多对多关系”,需要通过建立“教师”表与“授课”表、“课程”表与“授课”表之间的两个“一对多关系”来实现。

(3)建立“一对多的关系”同时就建立了主子表关系,“一”方为主表,“多”方为子表,是以主表的主键与子表的外键为级联字段创建的表间关系,因此建立关系之前,要先确定每张表的主键和外键。(www.xing528.com)

(4)在建立关系之前,如果在相互关联的表中输入的数据违反了参照完整性规则,就不能正常建立关系。所以,最好建好表间关系后再输入数据,如果数据违反参照完整性,系统会有相关信息提示。

4.操作提示

(1)建立“教师”表与“学院”表间的“一对多关系”。

1)在“数据库工具”选项卡下的“关系”组中,单击“关系”按钮,打开“关系”窗口。

2)在“关系”组中,单击“显示表”按钮,添加“教师”表和“学院”表。

3)两表之间应该已经出现了一条关系连线,这是因为设置查询字段过程中自动创建了关系。双击连线,弹出“编辑关系”对话框,可以看到两表以“学院编号”为关联字段。勾选“实施参照完整性”,再勾选“级联更新相关字段”,“级联删除相关记录”,单击“确定”按钮。如图3-7所示。

978-7-111-45056-6-Chapter03-23.jpg

图3-7 编辑表间关系的对话框

提示:创建关系时,相关表应当处于关闭状态。

4)返回“关系”窗口,可以看到在两个表之间出现了一条加粗的关系连线,并且在“学院”表一方显示“1”,在“教师”表一方显示“∞”,表示“一对多关系”。提示:相关联的字段不一定要有相同的名称,但要有相同的数据类型。

(2)实现“教师”表、“课程”表间的“多对多关系”。

1)在“关系”窗口中添加“授课”表和“课程”表。

2)将“教师”表的“教师编号”字段拖动到“授课”表中的“教师编号”处,弹出“编辑关系”对话框,创建“一对多关系”。

3)按照上述方法,建立“授课”表和“课程”表之间的“一对多关系”,这样就实现了“教师”表和“课程”表之间的关联。

(3)其余表关系的建立同上,表间关系如图3-8所示。

提示:主键是表中能够保证每一条记录有唯一值的一个或一组字段。外键用于和其他表建立关联,是其他表的主键字段。

978-7-111-45056-6-Chapter03-24.jpg

图3-8 建立表间关系视图

(4)参照表3-8~表3-14输入数据时,要注意因表间关系要遵循“实施参照完整性”,所以要先输入主表中的数据(一对多关系的“一”方),再输入子表的数据。主键不能为空。

需要注意的是:设置“实施参照完整性”,意味着操作数据记录时会受到以下限制。

1)不允许在相关表的外键字段中输入不存在于主表的主键中的值,但可以在外键中不输入任何值。

2)如果在相关表中存在和主表匹配的记录,则不允许从主表中删除这个记录。

3)如果在相关表中存在和主表匹配的记录,则不允许在主表中更改这个记录的值。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈