SQL Server 入门很轻松(微课超值版)
上QQ阅读APP看书,第一时间看更新

1.1 数据库与关系数据库

在学习数据库之前,我们需要理解一些与数据库相关的基本概念,如数据库、数据库系统、数据库管理系统等,只有理解好这些概念,我们才能更好地学习与掌握数据库。

1.1.1 数据库简介

数据库(Database)简称DB,是指用来存放数据的仓库。按照数据库的形象来理解,可以将数据库看作是电子化的文件柜,用户可以对文件柜中的数据进行新增、读取、更新、删除等操作。

例如,学校的人事部门常常要把本单位教师的基本情况(工号、姓名、年龄、性别、籍贯、学历等)存放在表中,这张表就可以看成一个数据库。有了这个“数据仓库”,用户就可以根据需要随时查询某教师的基本情况。

1.1.2 数据模型

数据模型是数据库系统的核心与基础,是关于描述数据与数据之间的联系,数据库的语义、数据一致性约束的概念性工具的集合。数据模型通常是由数据结构、数据操作和完整性约束3部分组成。

  • 数据结构:是对系统静态特征的描述。描述对象包括数据的类型、内容、性质和数据之间的相互关系。
  • 数据操作:是对系统动态特性的描述。是对数据库中各种对象实例的操作。
  • 完整性约束:是完整性规则的集合。它定义了给定数据模型中数据及其联系所具有的制约和依存规则。

根据数据存储结构的不同,可以将数据模型分为层次模型、网状模型、关系模型。

1. 层次模型

用树状结构表示实体类型及实体间联系的数据模型称为层次模型,简单地讲,层次模型实质上是一种有根节点的定向有序树,如图1-1所示。用户可以把层次数据库理解为段的层次。一个段相当于一个文件系统的记录,在层次数据模型中,文件或记录之间的联系形成层次。

从层次模型的结构可以看出,这种类型的数据库具有层次分明、结构清晰、不同层次间的数据关联直接简单等优点。但其缺点是数据必须向外扩展,节点之间很难建立横向关联,对插入和删除操作限制较多,因此应用程序的编写比较复杂。

2. 网状模型

用有向图表示实体类型及实体间联系的数据模型称为网状模型,按照网状数据结构建立的数据库系统称为网状数据库系统。网络模型也使用倒置树形结构,与层次模型不同的是网状模型的节点间可以任意发生关系,能够表示各种复杂的联系。如图1-2所示为一个网状模型的结构。

图1-1 层次模型的结构

图1-2 网状模型的结构

从图1-2可以看出,网状模型的优点是可以避免数据的重复,缺点是关联性比较复杂,尤其是当数据库变得越来越大时,关联性的维护会非常复杂。

3. 关系模型

用二维表的形式表示实体和实体间联系的数据模型称为关系模型。关系模型中无论是实体还是实体间的联系均由单一的结构类型——关系来表示,在实际的关系数据库中的关系也称表,一个关系数据库就是由若干个表组成的。表1-1为一个关系结构模型。

表1-1 关系结构模型

从表1-1可以看出,使用这种模型的数据库优点是结构简单,格式统一,理论基础扎实,而且数据表之间相对独立,可以在不影响其他数据表的情况下进行数据的增加、修改和删除;在进行查询时,还可以根据数据表之间的关联性,从多个数据表中查询抽取相关的信息。

1.1.3 关系数据库

关系数据库是建立在关系模型基础上的数据库,是利用数据库进行数据组织的一种方式,是现代流行的数据库管理系统中最为常用的一种,也是最有效率的数据组织方式之一,如常见的SQL Server、Oracle、MySQL等都是关系数据库系统。

关系数据库由数据表和数据表之间的关联组成,其中数据表通常是一个由行和列组成的二维表,每一个数据表分别说明数据库中某一特定的方面或部分的对象及其属性,表1-2为一个水果信息表。在这个数据表中,每行记录代表一种水果的完整信息,每列数据代表水果某一方面的信息。

关系数据库的特点在于它将每个具有相同属性的数据独立地存在一个表中,对任何一个表而言,用户都可以新增、修改、查询和删除表中的数据,而不影响表中的其他数据。下面我们来了解一下关系数据库中的一些常用术语,这对于后面章节的学习有很大的帮助。

表1-2 水果信息表

(1)关系:一个关系通常对应一张表。

(2)记录:表中的一行即为一条记录。

(3)属性:也被称为字段,表中的一列即为一个属性,给每一个属性起一个名称即为属性名或字段名。

(4)键:关系模型中的一个重要概念,在关系中用来标识行的一列或多列。

(5)主键:也称主关键字,是表中用于唯一确定一行的数据。关键字用来确保表中记录的唯一性,可以是一个字段或多个字段,常用作一个表的索引字段。每条记录的关键字都是不同的,因而可以唯一地标识一个记录。

微视频