《关系数据库基础》由会员分享,可在线阅读,更多相关《关系数据库基础(140页珍藏版)》请在金锄头文库上搜索。
1、关系数据库基础参考教材数据库系统概论 王珊 高等教 育出版社 数据库原理 高荣芳 西安电子科 技大学出版社 数据库系统使用人员 数据库应用系统开发人员 数据库维护人员 数据库系统分析员数据库学习层次 数据库基本概念 数据模型(ER模型、关系模型) 关系代数初步 关系数据库语言SQL初步数据库学习内容第一章 绪 论*数据 描述事物 数据结构(记录)*数据库 (DateBase) 数据集合(有组织、可共享)*数据库管理系统 ( DBMS)数据定义 操纵 运行 维护 管理*数据库系统(DBS)第一节 数据库技术的发展一.人工管理阶段时间:50年代中期以前硬件:磁带、纸带,无磁盘软件:无操作系统和管理
2、软件数据处理方式:批处理1.背景 2.特点1)数据不保留2)无数据管理软件,数据的管理由应用程序完成3)一组数据对应一个程序,数据冗余大且不共享二. 文件系统阶段1.背景时间:50年代后期到60年代中期 硬件:有了磁盘 软件:有了操作系统和专门的数据管理软件 数据处理方式:批处理、实时处理 2.特点 1)数据保存在外存上 2)数据与程序有了一定的独立性 3)文件多样化 4)数据存取以记录为单位3.文件系统的缺陷 数据冗余度大 数据独立性差 数据的完整性问题 数据的一致性问题 并发控制 存取数据麻烦三.数据库管理阶段1.背景时间:60年代后期 硬件:大容量磁盘,硬件价格下降 软件:软件价格上升,
3、为编制和维护系统软件及应用 程序所需成本增加 数据处理方式:实时处理、批处理、分布处理2.特点1)数据结构化2)数据的共享性高,冗余度低,易扩充3)数据独立性高4)数据由DBMS 统一管理和控制a. 数据的安全性保护b.数据的完整性检查c.并发控制d.数据库恢复综上所述,数据库是长期存储 在计算内 有组织的大量的数据集合。它可以供多个 用户共享,具有最小冗余度和较高的数据 独立性。DBMS在数据库建立、运行和维 护时对数据库进行统一控制,以保证数据 的安全性、完整性,并在多用户同时使用 数据库时进行并发控制,在发生故障后对 系统进行恢复。第二节 数据库系统体系结构1.单用户数据库系统 整个数据
4、库系统,包括应用程序、数据库 管理系统、数据库等都装在一台计算机上 ,由一个用户独占,不同的计算机之间不 能共享数据。2.主从式结构的数据库系统整个数据库系统,包括应用程序、数据库管理系 统、数据库等都集中存放在主机上,所有处理任 务都由主机来完成,各个用户通过主机的终端并 发地存取数据库中的数据,达到共享数据资源的 目的。3.分布式结构的数据库系统 数据库中的数据在逻辑上是一个整体,但物理地 分布在计算机网络的不同结点上。网络中的每个 结点(通常是一个通用计算机)都可以独立处理 本地数据库中的数据,执行局部应用;同时也可 以同时存取和处理多个异地数据库中的数据,执 行全局应用。4.客户/服务
5、器结构的数据库系统客户/服务器结构的数据库系统能将数据库管理系 统功能和应用分开,网络中来专门用于执行数据 库管理系统功能的计算机,称为数据库服务器, 简称服务器;将安装数据库管理系统的外围应用 开发工具,支持用户应用的计算机,称为客户机 。第三节 数据库系统结构一.三级模式结构1. 基本概念 型 : 对某一类数据的结构和属性的说明学生(学号,姓名,年龄,性别,系名,年级) 值 : 型的一个具体赋值(900201,黎明,20,男,计算机,90) 模式 : 数据库中全体数据的逻辑结构和特征的描 述 实例 : 模式的一个具体值2. 三级模式结构应用A应用B应用C应用D应用E外模式1外模式2外模式3
6、内模式模式数据库图1-26 数据库系统的三级模式结构1)模式又称逻辑模式,是数据库中全部数据的逻辑描述 。 标识数据项、记录及文件类型,并命名 规定数据项在记录中的划分和次序 规定码 说明数据项之间的联系,给记录间的联系命名 定义与数据有关的安全性、完整性要求2)外模式又称子模式,是数据库用户能够看到和使用的局 部数据的逻辑结构。3)内模式又称存储模式。4)二级映像 外模式/模式映像:逻辑独立性 模式/内模式映像:物理独立性第四节 数据库管理系统的组成 数据库语言数据定义子语言 数据操纵子语言 数据库管理的例行程序语言翻译处理程序系统运行控制程序公用程序数据库管理系统的工作流程第五节 数据库系
7、统一、硬件及数据库足够大的内存:存放操作系统、DBMS、应用程 序、数据缓冲区足够大的外存:存放数据库,数据备份二、软件1、DBMS2、支持DBMS的操作系统3、编译系统4、开发工具5、数据库应用系统三、人员1、数据库管理员DBA定义:数据资源管理机构的一组人员,负责全面 管理和控制数据库系统职责: 决定数据库的信息内容和结构 决定数据的存储结构和存取策略 定义数据的安全性要求和完整性约束条件 监控数据库的使用和运行 数据库的改进、重组2、系统分析员和数据库设计人员3、应用程序员4、用户第二章 数据模型数据模型:现实世界数据特征的抽象。概念模型:也称信息模型,它是按用户 的观点来对数据和信息建
8、 模,主要用于数据库设计 。数据模型:按计算机系统的观点对数据 建模,主要用于DBMS的 实现。包括网状模型、层 次模型、关系模型等。一. 数据模型的组成要素1. 数据结构a.与数据类型、属性、性质有关的对象数据项、记录、属性、域b.与数据之间联系有关的对象系型2. 数据操作检索、更新3. 数据的约束条件保证数据的正确、有效和相容。包括:a.本数据模型必须遵守的基本的通用的完整性约 束条件如:关系模型中任何关系必须满足实体完整性和 参照完整性两个条件。b.具体系统自定义的完整性约束条件如:学生管理信息系统中规定的学生累计成绩不 能有三门以上不及格等。二.概念模型1. 基本概念a.实体客观存在可
9、相互区分的事物。b.属性实体所具有的某一特性。c.码唯一标志实体的属性集。d.域属性的取值范围。e.实体型对同类实体的抽象和刻画。用实体名和属性集合 来表示。例如:顾客(编号,姓名,性别,住址,年龄)f.实体集同型实体的集合。例如:全体顾客就是一个实体 集。g.联系分为三类:一对一的联系(1:1)例如:部门和经理一对多的联系(1:n)例如:部门和职工多对多的联系(n:m)例如:顾客和贷款实体型A实体型A实体型A实体型B实体型B实体型B联系名联系名联系名图1-4两个实体型之间的三类联系111nnm图1-5三个实体型之间联系示例课程教员参考书讲授1mn 项目供应商零件供应nmp职工领导1n图1-6
10、一个实体型之间一对多联系示例2. 表示方法(实体-联系E-R方法)1)基本表示法 实体型:用矩形表示,矩形框内写明实体名 属性:用椭圆形表示,并用无向边与相应的实体 连接 联系:用菱形表示,菱形框内写明联系名,并用 无向边与有关实体连接起来,同时在无向边旁标 上联系的类型 如果一个联系具有属性,则这些属性也要用无向 边与该联系连接起来。如:图1-8学号学生姓名性别出生年份入学时间系图1-7 学生实体及属性供应商供应项目零件供应量图1-8 联系的属性仓库仓库号面积电话号项目项目号预算开工日期职工职工号姓名年龄职称零件零件号名称规格描述单价供应商供应商号姓名地址电话号帐号图1-9 实体及其属性图供
11、应商供应项目零件供应量mpn职工领导1n仓库工作仓库供应量1nnm图1-10 实体及其联系图图1-11 顾客贷款联系图顾客身份证号码姓名地址借贷m贷款贷款号金额n2)弱实体集 若一个实体集没有足够的属性构成一个主键,则这 个实体集称为弱实体集。如银行系统中的付款实体:付款付款帐号付款日期付款金额图1-12 付款实体及其属性图1-13 还贷联系图贷款贷款号金额付款付款帐号 付款日期 付款金额还贷n13)E-R的扩展特性A. 概括定义类型之间的一种子集联系。学生子集研究生本科生图1-14 概括帐户帐号金额子集检查帐户存款帐户透支额利率子集一般帐户银卡帐户金卡帐户图1-15 银行帐户对子类实体,子类
12、成员之间具有如下关系的一种 :a.无交集每一个成员最多属于一个子类。如:帐户实体中 ,每个帐户要么属于存款帐户,要么属于检查帐 户。b.覆盖同一个成员可以属于一个以上的子类。例如:假定项目组为员工的一个属性,表示员工 参加的项目情况。公司的一个员工可以参加一个 以上的项目开发,也可以一个也不参与。因此一 个员工可出现在不同的项目实体中。B. 聚集定义某一类型的组成成分。在E-R模型中若干属性的聚集组成了实体型学号学生姓名性别出生年份入学时间系图1-16 聚集复杂的聚集可以是某一类型的成分仍是一个聚集,例如:仓库仓库号面积 管理员姓名年龄性别工资图1-17 复杂的聚集4)设计E-R图的问题a.
13、实体和属性的选择雇员姓名电话号码雇员姓名电话地址电话号码使用图1-18 实体和属性的选择属性不再具有需要描述的性质属性不能具有与其它实体的联系职工职工号职工职称工资职工号聘任姓名年龄职称职工号姓名年龄住房标准图1-19 职工-职称关系b. 实体和联系的选择顾客身份证号码姓名地址借贷m贷款贷款号金额n顾客身份证号码姓名地址贷款m支行贷款号金额n地址名称图1-20 实体和联系的选择增加存储空间的开销易导致数据的不一致5)例子某 银 行 业 务 的 需 求 规 格 说 明 如 下 : 银 行 有 多 个 分 支 机 构 。 各 个 分 支 机 构 位 于 某 个 城 市 , 有 唯 一 的 名 字
14、标 识 。 银 行 监 控 每 个 分 支 机 构 的 资 产 。 银 行 的 员 工 通 过 其 身 份 证 号 来 标 识 。 银 行 的 管 理 机 构 存 储 每 个 员 工 的 姓 名 、 电 话 号 码 、 亲 属 姓 名 及 其 经 理 的 身 份 证 号 。 银 行 还 需 要 知 道 员 工 开 始 工 作 的 日 期 , 由 此 日 期 可 以 推 知 员 工 的 雇 佣 期 。 银 行 的 客 户 通 过 其 身 份 证 号 来 标 识 。 银 行 存 储 每 个 客 户 的 姓 名 及 其 居 住 的 街 道 和 城 市 。 客 户 可 以 有 帐 户 , 并 且 可
15、以 贷 款 。 客 户 可 能 同 某 个 银 行 员 工 发 生 联 系 , 该 员 工 是 此 客 户 的 贷 款 负 责 人 或 银 行 帐 户 负 责 人 。 银 行 提 供 两 类 帐 户 - - - - 储 蓄 帐 户 和 支 票 帐 户 。 帐 户 可 以 由 两 个 或 两 个 以 上 客 户 共 有 , 一 个 客 户 也 可 以 有 两 个 或 两 个 以 上 的 帐 户 。 每 个 帐 户 被 赋 以 唯 一 的 帐 户 号 。 银 行 记 录 每 个 帐 户 的 余 额 以 及 每 个 帐 户 所 有 者 访 问 该 帐 户 的 最 近 日 期 。 另 外 , 每 个
16、储 蓄 帐 户 有 其 利 率 , 而 每 个 支 票 帐 户 有 其 透 支 额 。 每 笔 贷 款 由 某 个 分 支 机 构 发 放 , 能 被 一 个 或 多 个 客 户 所 共 有 。 每 笔 贷 款 用 唯 一 的 贷 款 号 标 识 。 银 行 需 要 知 道 每 笔 贷 款 所 贷 金 额 以 及 逐 次 支 付 情 况 。 虽 然 贷 款 的 付 款 号 并 不 能 唯 一 标 识 银 行 所 有 为 贷 款 所 付 的 款 项 , 但 可 以 唯 一 标 识 为 某 贷 款 所 付 的 款 项 。 对 每 次 的 付 款 需 要 记 录 其 日 期 和 金 额 。 银 行 需 要 记 录 每 个 储 蓄 帐 户 或 每 个 支 票 帐 户 取 出 或 存 入 的 金 额 。某银行业务的需求规格说明如下: 银行有多个分支机构。各个分支机构位于某个城市,有唯一的名字标识。银行 监控每个分支机构的资产。