SQL Server 2012 数据库教程(第3版)
上QQ阅读APP看书,第一时间看更新

1.1.2 数据模型

数据模型是指数据库管理系统中数据的存储结构。数据库管理系统根据数据模型对数据进行存储和管理。常见的数据模型有:层次模型、网状模型和关系模型。

1. 层次模型

层次模型是最早用于商品数据库管理系统的数据模型。它以树状层次结构组织数据。树形结构的每个节点表示一个记录类型,记录之间的联系是一对多的。位于树形结构顶部的节点称为根节点,层次模型有且仅有一个根节点。根节点以外的其他节点有且仅有一个父节点。图1.2所示为某学校按层次模型组织的数据示例。

0

图1.2 某学校按层次模型组织的数据示例

层次模型结构简单,容易实现,对于某些特定的应用系统效率很高,但如果需要动态访问数据(如增加或修改记录类型)时,效率并不高。另外,对于一些非层次性结构(如多对多联系),层次模型表达起来比较烦琐和不直观。

2. 网状模型

网状模型可以看作是层次模型的一种扩展。它采用网状结构组织数据,每个节点表示一个记录类型,记录之间的联系是一对多的。一个节点可以有一个或多个父节点和子节点,这样,数据库中的所有数据节点就构成了一个复杂的网络。图1.3所示为按网状模型组织的数据示例。

0

图1.3 按网状模型组织的数据示例

与层次模型相比,网状模型具有更大的灵活性,更直接地描述现实世界,性能和效率也较好。网状模型的缺点是结构复杂,用户不易掌握。

3. 关系模型

关系模型是目前应用最多、最为重要的一种数据模型。关系模型建立在严格的数学概念基础上,以二维表格(关系表)的形式组织数据库中的数据,二维表由行和列组成。从用户观点看,关系模型是由一组关系组成的,关系之间通过公共属性产生联系。每个关系的数据结构是一个规范化的二维表,所以一个关系数据库就是由若干个表组成的。图1.4所示为按关系模型组织的数据示例。

0

图1.4 按关系模型组织的数据示例

在图中显示的关系模型中,描述学生信息时使用的“学生”表涉及的主要信息有:学号、姓名、性别、出生时间、专业、总学分及备注。

表格中的一行称为一个记录,一列又称为一个字段,每列的标题称为字段名。如果给关系表取一个名字,则有n个字段的关系表的结构可表示为:关系表名(字段名1,……,字段名n),通常把关系表的结构称为关系模式。

在关系表中,如果一个字段或几个字段组合的值可唯一标识其对应记录,则称该字段或字段组合为码。例如,学生的“学号”可唯一标识每一个学生,则“学号”字段为“学生”表的码。有时一个表可能有多个码,对于每一个关系表通常可指定一个码为“主码”,在关系模式中,一般用下画线标出主码。

设“学生”表的名字为XSB,关系模式可表示为:XSB(学号,姓名,性别,出生时间,专业,总学分,备注)。

从图1.4可以看出,按关系模型组织数据表达方式简洁、直观,插入、删除、修改操作方便,而按层次、网状模型组织数据表达方式,操作比较复杂。因此,关系模型得到广泛应用,关系型数据库管理系统(RDBMS)成为主流。目前,比较流行的关系型数据库管理系统包括SQL Server、Access、Oracle、Sybase、MySQL、DB2等。

SQL Server是由Microsoft公司开发的Windows平台大中型关系数据库管理系统。SQL Server版本从SQL Server 6.5、SQL Server 7.0、SQL Server 2000、SQL Server 2005、SQL Server 2008到SQL Server 2012,SQL Server 2014版也已经上市。本书主要介绍SQL Server 2012。