【期末复习】数据库
一、绪论
数据与语义的关系
描述事物的符号记录称为数据。
数据的含义称为数据语义,数据与其语义是不可分的。
区分数据库、数据库系统、数据库管理系统的概念
- 数据库–Database:数据库(Database,简称DB)是长期储存在计算机内、有组织、可共享的大量数据的集合
- 数据库系统–Database System:在计算机系统中引入数据库后的系统构成
- 数据库管理系统–DataBase Management System:DBMS是位于用户与操作系统之间的一层数据管理软件。是基础软件,是一个大型复杂的软件系统
数据库管理系统的功能有那些
DBMS的主要功能
-
数据定义功能
提供数据定义语言(DDL)
定义数据库中的数据对象 -
数据组织、存储和管理
分类组织、存储和管理各种数据
确定组织数据的文件结构和存取方式
实现数据之间的联系
提供多种存取方法提高存取效率 -
数据操纵功能
提供数据操纵语言(DML)
实现对数据库的基本操作 (查询、插入、删除和修改) -
数据库的事务管理和运行管理
数据库在建立、运行和维护时由DBMS统一管理和控制
保证数据的安全性、完整性、多用户对数据的并发使用
发生故障后的系统恢复 -
数据库的建立和维护功能(实用程序)
数据库初始数据装载转换
数据库转储
介质故障恢复
数据库的重组织
性能监视分析等 -
其它功能
DBMS与网络中其它软件系统的通信
两个DBMS系统的数据转换
异构数据库之间的互访和互操作
数据库系统的特点,有哪些主流的数据库管理系统
- 数据结构化
- 数据的共享性高,冗余度低,易扩充
- 数据独立性高
- 数据由DBMS统一管理和控制
目前互联网上常见的数据库管理系统有Oracle、MySQL、MS SQL Server、DB2、PostgreSQL、Access、Sybase、Informix
什么是数据独立性、物理独立性、逻辑独立性
数据独立性包括数据的物理独立性和数据的逻辑独立性。
- 物理独立性是指用户的应用程序与数据库中数据的物理存储是相互独立的
- 逻辑独立性是指用户的应用程序与数据库的逻辑结构是相互独立的
数据的不一致性、安全性、完整性、 并发控制、恢复的概念,数据模型的三要素
不一致性:统一数据不同副本的值不一样
安全性:保护数据以防止不合法使用造成的数据泄露
完整性:数据的正确性、有效性和相容性。
并发控制:当多个用户的并发进程同时存取、修改数据库时,可能会发生相互干扰而得到错误的结果或使数据库的完整性遭到破坏,因此必须对多用户的并发操作加以控制和协调
数据库恢复:将数据库从错误状态恢复到某一已知的正确状态
数据模式的三要素:
- 数据结构:描述数据库的组成对象以及对象之间的联系
- 数据操作:对数据库中各种对象(型)和实例(值)允许执行的操作的集合,包括操作及有关操作的规则
- 数据的完整性约束:一组完整性规则
概念模型,模型
概念模型的用途:
- 概念模型用于信息世界的建模
- 是现实世界到机器世界的一个中间层次
- 是数据库设计的有力工具
- 数据库设计人员和用户之间进行交流的语言
对概念模型的基本要求:
- 较强的语义表达能力
- 能够方便、直接地表达应用中的各种语义知识
- 简单、清晰、易于用户理解
层次模型,网状模型,关系模型的概念
层次模型:
(1)有且有一个结点没有双亲结点,这个结点称为根节点
(2)根以外的其他结点有且只有一个双亲结点
网状模型:
(1)允许一个以上的结点无双亲
(2)一个结点可以有多个双亲
关系模型
(1)关系模型的概念建立在严格的数学概念基础上
(2)从用户观点来看,关系模型由一组关系组成。每个关系的数据结构是一张规范化的二维表
关系模型中的术语:关系、元组、属性、主码、外码、全码、域、分量、关系模式
-
关系(Relation)
一个关系对应通常说的一张表 -
元组(Tuple)
表中的一行即为一个元组 -
属性(Attribute)
表中的一列即为一个属性,给每一个属性起一个名称即属性名 -
主码(Key)
表中的某个属性组,它可以唯一确定一个元组。 -
域(Domain)
属性的取值范围。 -
分量
元组中的一个属性值。 -
关系模式
对关系的描述
关系名(属性1,属性2,…,属性n)
学生(学号,姓名,年龄,性别,系,年级)
什么是数据库系统的三级模式和两级映射,其作用是什么
数据库系统的三级模式
(1)模式(schema)
模式也称为逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。
(2)外模式(external schema)
外模式也称为子模式(subschema)或用户模式,能够看见和使用局部数据的逻辑结构和特征描述,是数据库用户的数据视图,是与某一应用右端的数据的逻辑表示。
(3)内模式(internal schema)
内模式也称为存储模式(storage schema),一个数据库只有一个内模式。它是数据物理结构和存储方式的描述,是数据在数据库内部的组织方式。
作用:把数据的具体组织留给数据库管理系统,使用户能逻辑地、抽象地处理数据,而不必关心数据在计算机中的具体表现方法与存储方式。
数据库系统的两级映射
(1)外模式/模式映像
当模式改变时(如增加新的关系、新的属性、改变属性的数据类型等),由数据库管理员对各个外模式/模式的映像作相应改变,可以使外模式保持不变。应用程序是依据数据的外模式编写的,从而因公程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。
(2)模式/内模式映像
当数据库的存储结构改变时(例如选用了另一种存储结构),由数据库管理员对模式/内模式印象作象形改变,可以是模式保持不变,从而应用程序也不必改变。保证了数据与程序的物理独立性,简称数据的物理独立性
数据库系统的组成
数据库系统一般由数据库、数据库管理系统(及其应用开发工具)、应用程序和数据库管理员构成。具体是指:
1、硬件平台及数据库
2、软件
3、人员
数据库管理员的职责
- 决定数据库中的信息内容和结构
- 决定数据库的存储结构和存取策略
- 定义数据的安全性要求和完整性约束条件
- 监控数据库的使用和运行
- 数据库的改进和重组、重构
二、关系模型
关系模型中的三类完整性约束的概念
(1)关系的三类完整性约束
- 实体完整性和参照完整性:
关系模型必须满足的完整性约束条件;
称为关系的两个不变性,应该由关系系统自动支持; - 用户定义的完整性:
应用领域需要遵循的约束条件,体现了具体领域中的语义约束 ;
(2) 实体完整性(Entity Integrity)
-
若属性A是基本关系R的主属性,则属性A不能取空值
-
例:
SAP(SUPERVISOR,SPECIALITY,POSTGRADUATE)
POSTGRADUATE:
主码(假设研究生不会重名)
不能取空值 -
实体完整性规则的说明
(1) 实体完整性规则是针对基本关系而言的。一个基本表通常对应现 实世界的一个实体集。
(2) 现实世界中的实体是可区分的,即它们具有某种唯一性标识。
(3) 关系模型中以主码作为唯一性标识。
(4) 主码中的属性即主属性不能取空值。主属性取空值,就说明存在某个不可标识的实体,即存在不可区分的实体,这与第(2)点相矛盾,因此这个规则称为实体完整性
(3)参照完整性