第一章 绪论
1.1 数据库系统概述
数据库的四个基本概念
1.数据
数据是数据库中存储的基本对象,一般数据是描述事物的符号记录,这种符号记录可以输数字,也可以是文字、徒刑、音频等。
2.数据库
数据库是长期存储在计算机内有组织的,可共享的大量数据的集合。数据库中的数据按照一定的数据模型组织、描述和存储,基友较小的冗余度,较高的数据独立性和易扩展性。
3.数据库管理系统DBMS
数据库管理系统是一款计算机的基础软件,用于科学的组织和存储数据,高效地获取和维护数据。其中主要功能包括:
- 数据定义功能:数据库管理系统提供数据定义语言DDL(Data Deifnition Language),拥护通过它可以方便地对数据库中的数据对象的组成和结构进行定义
- 数据组织、存储和管理
- 数据操纵功能:数据库管理系统还提供数据操作语言DML(Data Manipulation Language),用于对数据库的基本操作如CRUD
- 数据库事物的管理和运行
- 数据库的建立和维护
4.数据库系统DBS
数据库系统是数据库、数据库管理系统、应用程序和数据库管理员DBA组成的系统
数据库系统的特点
1.数据结构化
这是数据库的主要特征之一,在文件中的记录内部具有结构,但是记录的结构和记录之间的联系被固化在程序中,需要由程序员加以维护。而数据库的结构话可以十分方便地维护记录之间的联系和记录的结构
2.数据的共享性高、冗余度低并且以扩充
3.数据独立性高
数据独立性包括物理独立性和逻辑独立性。物理独立性指的是用户应用程序和数据库中数据的物理存储是相互独立的。
逻辑独立性实质用户的应用程序和数据库的逻辑结构是相互独立的。
4.数据由数据库管理系统统一管理和控制
1.2 数据模型
数据模型也是一种模型,他是对现实世界数据特征的抽象。也就是说数据模型是用来描述数据、组织数据和对数据进行操作的。数据模型是数据库系统的核心和基础。
1.2.1 两类数据模型
根据模型应用的不同目的,可以将模型划为两大类,它们属于两个不同的层次。第一类是概念模型,第二类是逻辑模型和物理模型。
- 概念模型是按用户观点来对数据和信息建模,主要用于数据库设计。
- 第二类中逻辑模型主要包括层次模型、网状模型、面向对象数据模型和对象关系模型等。第二类中的物理模型是对数据最底层的抽象,它描述数据在系统内的表示方式和存取方法,是面向计算机系统的。
1.2.2 概念模型
(1)实体(entity)
客观存在并且可以相互区别的食物成为实体。比如一个职工、一个学生、一个部门等
(2)属性(attribute)
实体所具有的某一特性成为属性,一个实体可以由若干个属性来刻画,比如学生实体可以由学号、姓名、性别等属性构成。
(3)码(key)
唯一标识实体店属性集称为码,比如学号属性称为学生实体的码。
(4)实体型(entity type)
实体名以及其属性名集合来抽象和刻画同类实体称为实体,例如,学生(学号,姓名,性别,入学时间)就是一个实体型
(5)实体集
同一类型实体的集合称为实体集,例如全体学生就是一个实体集合。
(6)联系
实体之间的联系通常指不同实体集之间的联系,比如实体之间的联系有一对一、一对多、多对多等类型
1.2.3 数据模型的组成要素
数据模型是严格定义一组概念的集合,因此数据模型通常由数据结构、数据操作和数据的完整性约束条件三部分组成
- 数据结构
数据结构描述数据库组成和对象时间的关系 - 数据操作
数据操作是指对数据库中各种对象的实例允许执行的操作的集合,包括操作以及有关的操作规则。 - 数据的完整性约束条件
数据的完整性约束条件是一组完整性规则。完整性规则是给定数据模型中数据及其联系所具有的制约和一村规则,用于限定数据模型的数据库状态以及状态变化,从而保证数据的正确、有效和相容。在这里描述的比较抽象,看不懂的也不用担心,后面有详细介绍,届时会比较通俗易懂
1.2.4 关系模型
关系模型是最重要的一种数据模型,关系数据库系统采用关系模型作为数据的组织方式。这也是我们研究的重点。
1.关系模型的数据结构
- 关系(relation):一个关系对应一张表,例如图1.14
- 元组(tuple):表中的一行就是一个元组
- 属性(attribute):表中的一列就是一个属性,每个属性的名称称为属性名
- 码(key):又称为码键,表中的某个可以唯一确定一个元组的属性组称之为码
- 域(domain):域是一组具有相同数据类型的值的集合。属性的取址范围来自某个域。如人的性别取值范围为(男,女)
- 分量:元素中的一个属性值