数据的定义
数据是数据库中存储的基本对象。
数据的性质
- 数据和语义环境密切相关。
- 数据通常由型和值之分。
- 现实生活中数据往往不是孤立存在的,他们之间是有联系的
数据库
数据库技术本质是一种数据库管理技术。
数据库管理系统 DBMS
对复杂的数据进行管理。
数据库管理的主要功能
- 数据定义,提供数据定义语言(DDL),提供sql标准。
- 数据操纵,提供数据操纵语言(DML),实现基本的增删改查。
- 事务管理和运行管理,提供并发访问,保证数据的安全性、完整性、确保能够恢复到一致性。
- 数据存储和查询处理,确定数据的物理组织和存取方式,提供数据的持久存储和有效访问。
- 数据库的建立和维护
- 其他功能
数据库系统
数据库系统由数据库、DBMS(及其开发工具)、应用系统和数据库管理员组成。
数据模型
数模模型是数据库技术的核心概念。
数据模型的层次
- 概念模型(也称信息模型)
- 现实世界到计算机世界跨度较大,需要一个中间层次,这就是信息世界。
- 概念模型是对信息世界进行建模,是现实世界到信息世界的第一层抽象。
- 数据库设计人员了解现实世界后再大脑中的第一次抽象
- 概念模型通常和计算机世界无关
- 实体-联系模型进行建模(E-R图)
- 数据模型
三要素:数据结构、数据操作、完整性约束。
关系模型
- 关系模型是主流的数据模型。
- 具有坚实的数学基础、简洁的数据形式,并且支持易学易用的过程化语言。
关系模型的数据结构
- 现实世界中的对象和对象之间的联系都用关系表示。
- 关系模型要求关系必须是规范化的;
关系模型的完整性约束
- 完整性约束
- 参照完整性
- 用户自定义完整性
数据库系统的结构
- 外部结构
- 内部结构
-
模式,逻辑模式;全体数据的总体逻辑结构描述,是数据库的核心与关键。
-
外模式,介于模式和应用之间
-
内模式,全体数据物理结构描述
-
外模式-模式映像,外模式与模式之间的对应关系;可以保证外模式的相对稳定性,为数据的逻辑独立性提供了保证。
-
模式-内模式映像,定义数据全局逻辑结构与存储结构之间的对应关系。为数据的物理独立性提供了保证。通常,模式-内模式映像定义包含在模式之中。
-
数据的独立性
数据独立性是指数据与应用程序相互独立。
- 数据的逻辑独立性,应用程序与数据库的逻辑结构之间的相互独立性,由 外模式-模式映像 保证
- 数据的物理独立性,应用程序与存储在磁盘上的数据库中的数据之间的相互独立性,由模式-内模式映像 保证。
数据库语言(DDL、DML、DCL)
三种语言
数据定义语言 DDL
- 数据定义语言(DDL),用于定义数据库模式
- 定义数据库的结构
- 提供完整性约束的定义机制
- 对数据定义进行修改和删除的
数据字典(DD)
数据字典 是DBMS维护的一系列内部表,用来存放 原数据。
原数据 是关于数据的数据,包括数据对象的定义、索引的定义,视图的定义、授权的定义。
参考答案:
- 系统中各类数据描述的集合,是对数据流图的详细描述。
- 以特定的格式记录系统中各种数据、数据元素以及他们的名字、性质、意义以及约束。
访问数据时,DBMS都要访问数据访问数据字典。
数据操纵语言 DML
- 数据操纵语言(DML),用于表达数据库的查询和更新
过程化DML,如层次和网状数据库系统,要求用户指明需要什么数据,而且需要用户描述如何获得这些数据的详细过程。
非过程化DML,用户需要指明获取什么,主要是关系型数据库系统。
数据控制语言 DCL
- 数据控制语言(DCL),用于定义用户对数据对象的访问权限
- 回收授权
- 建立审计
- Grant、Remove 等指令
实体-联系的基本概念
实体
客观存在的事物,可以使实际的也可以是抽象的,每个实体可以用一组属性来表示,这些属性都有一定的取值范围,称为值域。
-
实体集,具有相同属性的实体的集合,实体集通常对应数据库中的表,表中的每一行记录就是一个实体
-
实体和实体集的型(类型)
- 学生可以是一个实体,其类型可以包括学号、姓名、性别等属性。
- 所有学生构成了一个学生实体集,其类型包括学生的属性和关系。
-
实体的值
-
实体集的值
-
弱实体集:所有属性都不构成这个实体的码,必须依赖一个强实体。
- 分辨符
- 部分码
- 双边矩形宽表示
码
- 主码:理解为主键,码中的属性称为非主属性。
- 候选码:可以多个,但只选一个做为主码。
- 超码:能够唯一确认集合中的数据,就是有个主码和其他无关紧要的属性。
- 外码:(理解为外键)
单个属性记作:sno;
多个属性记作:{sno,sname},用集合方式。
在不需要特别强调主码时,本书将使用 “码” 表示主码或候选码,而超码是码的超集。
码是语义概念,是实体集的性质。
属性
- 简单属性,
- 基本属性,
- 派生属性,是非永久性存于数据库的属性,可以通过计算推导出来,比如年龄。
- 复合属性,复合属性是指具有多个属性的组合,例如名字属性,它可以包含姓氏属性和名字属性
- 多值属性,一个实体的某个属性可以有多个不同的取值,例如一本书的分类属性,这本书有多个分类,例如科学、医学等,这个分类就是多值属性, 用双线椭标识。
- 单指属性,该属性只能取单个值。
- 可选属性,并不是所有的属性都必须有值,有些属性的可以没有值,这就是可选属性,在椭圆的文字后用(O)来表示。
值域:数据的取值范围。
联系
联系是多个实体之间的相互关联。
- 一对一联系(1:1),一个学校只能有一个校长。
- 一对多联系(1:n);多对一联系(n:1),
- 多对多联系(m:n联系)
实体联系图(ER图):
- 矩形框,实体集
- 椭圆,表示属性
- 多值属性用双边椭圆
- 派生属性用虚边椭圆
- 其他属性用单实边椭圆
- 码的属性用下横线标识
- 菱形,表示关系