2.2 关系型数据库
Access 2016是一种关系型数据库管理系统,而关系型数据库即建立在关系模型基础上的数据库。关系模型是目前最流行的数据库模型,它的数据结构简单清晰,是一个二维表的集合,每个表格就是一个关系。这意味着在Access 2016数据库中,一个表中的数据与另一个表中的数据是有关系的。
2.2.1 为什么创建多个表
一些初级用户在数据库中创建表时,总是希望创建一个能够包含全部信息的巨型表。例如,创建一个图书馆的图书管理表,其中包含了图书信息(图书编号、书名、作者、出版社、单价等)、图书类别信息(类别名称、可借天数、超期罚款等)及每本图书的借阅信息(借阅ID、学号、借阅日期、归还日期等),随着图书馆不断购入新的图书,该表中的数据会迅速增加,并且包含了许多无法管理的数据。
由此可知,创建这种巨型表后,会非常难以维护。随着数据的不断增加,系统效率随之降低,容易出现数据输入错误,同时会出现大量重复数据或空白数据。例如,若一本书有多次借阅信息,在记录不同的借阅信息时,该条信息前面的图书信息和图书类别信息将会大量重复。
为了解决以上问题,可以创建多个包含少量信息的表,每个表中都有一个主题,表中的字段都是围绕该主题所创建的。创建多个表并建立各个表之间的表关系后,同样可以将这些表当成一个表使用,但并不会出现上述问题。
2.2.2 使用多个表
上一节介绍了为什么需要在数据库中创建多个表,本节将介绍如何使用这些表。例如,在“图书管理”数据库中建立了两个表:“图书类别信息”表和“图书信息”表。其中,“类别编号”字段为“图书类别信息”表的主键,需在“图书信息”表中添加该字段作为其外键,通过该字段,创建这两个表的关系,将它们关联起来。
创建关系后,可以将这两个表当成一个表看待,方便用户查看某一类别下的所有图书信息,而不必重复查看每个表的记录。同样地,在每次购入新书时,只需更新“图书信息”表的内容。
由以上例子可以看出,由于特定主题的所有信息都在一个表内,所以将数据分布到数据库中的多个表内可以使系统变得更易于维护;创建了关系后又很方便地将它们相互关联起来,这样既节省了数据的存储空间,又减少了数据的冗余,使数据组织非常条理化。