




已阅读5页,还剩165页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
主要内容5 1数据库系统的基本概念5 2数据模型5 3关系数据库5 4数据库设计5 5SQL简介 第5章数据库技术基础 知识类型 理论二级所占分值 约8分课时 4学时参考书目 数据库系统及应用 梁树军张建伟中国电力出版社 5 1数据库系统的基本概念 5 1 1数据库 数据库管理系统 数据库系统 临时性数据 存放于计算机内存中 与程序仅有短时间的交互关系 随着程序的结束而消亡 永久性数据 对系统起着长期持久的作用 数据库中处理的是持久性数据 数据 是描述事物所使用的符号 数据的种类 文字 图形 图像和声音计算机中的数据 数据 Data 与数据处理 DataProcessing 5 1数据库系统的基本概念 5 1 1数据库 数据库管理系统 数据库系统 临时性数据 永久性数据 数据的型给出了数据表示的类型 如整型 实型 字符型 而数据的值给出了符合给定型的值 数据 是描述事物所使用的符号 数据的种类 文字 图形 图像和声音计算机中的数据 数据的类型 Type 与值 value 数据 Data 与数据处理 DataProcessing 5 1数据库系统的基本概念 5 1 1数据库 数据库管理系统 数据库系统 数据处理 是指对数据的收集 组织 整理 加工 存储和传播等工作 电子数据处理 用电子计算机进行的数据处理称为电子数据处理 ElectronicDataProcessing 简称为EDP 1 数据管理 2 数据加工 3 数据传播 是数据处理的核心和基础 数据库 Database DB 5 1数据库系统的基本概念 5 1 1数据库 数据库管理系统 数据库系统 数据库是长期存储在计算机内 有组织的和可共享的数据集合 数据库中数据的特点 数据库中数据的特点是 集成 和 共享 即数据库中集中了各种应用的数据 进行统一的构造和存储 而使它们可被不同应用程序所使用 数据库的建设规模 数据库信息量的大小和使用频度已成为衡量一个国家信息化程度的重要标志 数据库管理系统 DBMS 5 1数据库系统的基本概念 5 1 1数据库 数据库管理系统 数据库系统 数据库管理系统 DatabaseManagementSystem DBMS 是专门用于管理数据库的计算机系统软件 数据库管理系统能够为数据库提供数据的定义 建立 维护 查询和统计等操作功能 并完成对数据完整性 安全性进行控制的功能 它位于应用程序和操作系统中间 是整个数据库系统的核心 常用的DBMS 小型的数据库管理软件 只具备数据库管理系统的一些简单功能 如Foxpro和Access等 严格意义上的DBMS系统 具备其全部功能 包括数据组织 数据操纵 数据维护 控制及保护和数据服务等 如ORACLE PowerBuilder SQLServer等 可以把数据库看成是一个仓库 在仓库里存放着数据 把数据库管理系统看成仓库的保管员 负责数据的搬进 整理和搬出 5 1数据库系统的基本概念 5 1 1数据库 数据库管理系统 数据库系统 仓库保管员数据库管理系统 具体地说 这个保管员要 检查仓库的数据是否被允许 数据的定义问题 如何摆放最好 数据的结构问题 如何更快找到用户需要的数据并提取出来 数据的操纵问题 数据如何不被坏人提走 数据的安全性问题 如何处理多个人同时来提货 并发控制问题 当多个人同时来提货时 为了提高效率那么就可以一次拿几张单子 顺路把需要的数据都取出来 保管员所做的事情正是数据库管理系统需要做的事情 为完成数据库管理系统的功能 数据库管理系统提供了相应的数据语言 DataLanguage 5 1数据库系统的基本概念 5 1 1数据库 数据库管理系统 数据库系统 数据定义语言 DDL DataDefinitionLanguage DDL 该语言负责数据的模式定义与数据的物理存取构建 数据操纵语言 DML DataManipulationLangugge DML 该语言负责数据的操纵 包括查询及增加 删除及增加 删除 修改等操作 数据控制语言 DCL DataControlLanguage DCL 该语言负责数据完整性 安全性的定义与检查以及并发控制 故障恢复等功能 5 1数据库系统的基本概念 5 1 1数据库 数据库管理系统 数据库系统 数据库系统 DBS 5 1数据库系统的基本概念 5 1 1数据库 数据库管理系统 数据库系统 数据库系统 DatabaseSystem DBS 是以数据库为核心的完整的运行实体 它由以下五部分组成 数据库 DB 数据库管理系统 DBMS 数据库管理员 DatabaseAdministrator DBA 对数据库进行规划 设计 维护和监视等工作的人员 系统硬件平台 计算机 网络等硬件配置 系统软件平台 操作系统 DBS开发工具 程序设计语言及接口软件 数据库应用系统 DBAS DatabaseApplicationSystem 5 1数据库系统的基本概念 5 1 1数据库 数据库管理系统 数据库系统 由数据库系统 应用软件 应用界面组成 应用软件是由数据库系统所提供的数据库管理系统 软件 及数据库系统开发工具所书写而成 而应用界面大多由相关的可视化工具开发而成 数据库 数据库管理系统 应用程序1 应用程序2 应用程序3 应用程序n 用户1 用户2 用户m 数据库系统 数据 记录 数据管理的三个阶段 5 1数据库系统的基本概念 5 1 2数据库系统的特点 人工管理 文件系统和数据库技术等3个阶段 考点 1 人工管理阶段 50年代中期 1 数据不保存 没有磁盘 无法保存数据 2 由应用程序管理数据 没有操作系统 3 数据不共享 即使两个不同应用涉及到相同的数据 也必须各自定义 无法互相利用 互相参照 4 数据不具有独立性 数据无法独立于程序 它是程序的组成部分 数据管理的三个阶段 5 1数据库系统的基本概念 5 1 2数据库系统的特点 人工管理 文件系统和数据库技术等3个阶段 考点 2 文件系统阶段 50年代后期 60年代中期 数据实现共享 数据仍存在相当程度的冗余 数据管理的三个阶段 5 1数据库系统的基本概念 5 1 2数据库系统的特点 人工管理 文件系统和数据库技术等3个阶段 考点 3 数据库系统阶段 60年代后 数据共享度高 冗余度小 2 数据库系统的特点 1 数据的集成性 5 1数据库系统的基本概念 5 1 2数据库系统的特点 在DBS中按照多个应用的需要 采用统一的数据结构方式 建立数据间的语义联系 组织全局的统一的数据结构 即数据模式 从而构成一个内在紧密联系的数据整体 而每个应用的数据则是全局结构的一部分 称为局部结构 即视图 2 数据库系统的特点 1 数据的集成性 5 1数据库系统的基本概念 5 1 2数据库系统的特点 2 数据的高共享性与低冗余性 数据的集成性使数据可为多个应用程序共享 数据的共享又极大地减少数据冗余 数据冗余度小是指重复的数据少 减少不必要的存储空间 避免数据的不一致性 所谓数据的不一致性指的是同一数据出现在不同的数据文件中 被系统的不同应用程序使用而造成不同的值 2 数据库系统的特点 1 数据的集成性 5 1数据库系统的基本概念 5 1 2数据库系统的特点 2 数据的高共享性与低冗余性 3 数据独立性 指程序与数据互不依赖 物理独立性 逻辑独立性 数据的 物理存储结构总体逻辑结构 与程序相互独立 其结构改变时不需修改应用程序 2 数据库系统的特点 1 数据的集成性 5 1数据库系统的基本概念 5 1 2数据库系统的特点 2 数据的高共享性与低冗余性 3 数据独立性 4 数据统一管理与控制 数据完整性检查 数据的安全性保护 并发控制 数据恢复 5 为用户提供了友好的接口 1 数据库系统的三级模式 5 1数据库系统的基本概念 5 1 3数据库系统的三级模式结构和两级映射 概念模式 又称模式 是数据库中全体数据的逻辑结构和特征的描述 一个数据库只有一个概念模式 它与具体硬件 软件环境无关 外模式 又称子模式或用户模式 用户所见到的数据模式 即用户数据视图 是数据库局部数据的逻辑结构和特征的描述 一个概念模式可以有若干个外模式 内模式 又称物理模式或存储模式 给出了数据库的物理存储结构与物理存取方法 即数据在数据库内部的表示方式 一个数据库只有一个内模式 三级模式图 内模式 物理数据库 数据库 概念模式 概念数据库 应用 应用 应用 外模式 用户数据库 外模式 用户数据库 外模式 用户数据库 数据模式是数据库系统中数据结构的一种表示形式 它具有不同的层次与结构方式 体现了数据库的总体观 体现了数据库的用户观 体现了数据库的存储观 1 数据库系统的三级模式 5 1数据库系统的基本概念 5 1 3数据库系统的三级模式结构和两级映射 三级模式总结 外模式 最外层 反映用户对数据的要求 概念模式 中层 反映设计者的全局数据逻辑要求 内模式 最低层 反映了数据在计算机物理结构中的实际存储形式 三级模式划分意义 有利于保持数据库的数据独立性 2 数据库系统的两级映射 5 1数据库系统的基本概念 5 1 3数据库系统的三级模式结构和两级映射 1 概念模式到内模式 定义了数据的全局逻辑结构与数据的物理存储结构间的对应关系 2 外模式到概念模式 定义了外模式与概念模式的对应关系 每个外模式是概念模式的一个基本视图 三级模式 两种映射关系图 内模式 物理数据库 数据库 概念模式 概念数据库 应用 应用 应用 外模式 用户数据库 外模式 用户数据库 外模式 用户数据库 概念模式 映射内模式 外模式 映射概念模式 2 数据库系统的两级映射 5 1数据库系统的基本概念 5 1 3数据库系统的三级模式结构和两级映射 两级映射一般由DBMS实现保证了数据库系统中数据的逻辑独立性和物理独立性 使用户能以逻辑方式方便地访问数据库中的数据 而不必关心数据在计算机中的具体表示方式与存储方式 5 1数据库系统的基本概念补充习题 1 数据库系统的核心是 A 数据模型B 数据库管理系统C 软件工具D 数据库 2 下列叙述中正确的是 A 数据库是一个独立的系统 不需要操作系统的支持B 数据库设计是指设计数据库管理系统C 数据库技术的根本目标是要解决数据共享的问题D 数据库系统中 数据的物理结构必须与逻辑结构一致 3 下列模式中 能够给出数据库物理存储结构与物理存取方法的是 A 内模式B 外模式C 概念模式D 逻辑模式 4 下述关于数据库系统的叙述中正确的是 A 数据库系统减少了数据冗余B 数据库系统避免了一切冗余C 数据库系统中数据的一致性是指数据类型的一致D 数据库系统比文件系统能管理更多的数据 BCAA 5 1数据库系统的基本概念补充习题 5 在数据管理技术的发展过程中 经历了人工管理阶段 文件系统阶段和数据库系统阶段 其中数据独立性最高的阶段是 A 数据库系统B 文件系统C 人工管理D 数据项管理 6 下列有关数据库的描述 正确的是 A 数据库是一个DBF文件B 数据库是一个关系C 数据库是一个结构化的数据集合D 数据库是一组文件 7 单个用户使用的数据视图的描述称为 A 外模式B 概念模C 内模式D 存储模式 ACA 8 数据独立性是数据库技术的重要特点之一 所谓数据独立性是指 05 4 A 数据与程序独立存放B 不同的数据被存放在不同的文件中C 不同的数据只能被对应的应用程序所使D 以上三种说法都不对 9 下述说法中没有体现数据库系统特点是 A 数据面向应用程序B 数据结构化C 数据冗余小D 数据共享性高10 数据库管理系统实现对数据库中数据查询 插入 修改和删除的功能称为 A 数据定义功能B 数据查询功能C 数据操作功能D 数据控制功能 DAC 11 数据库管理系统DBMS中用来定义模式 内模式和外模式的语言为 A CB BasicC DDLD DML CB 12 数据库系统体系结构的三级模式间存在两种映像 它们是 A 模式与内模式间 模式与模式间B 子模式与模式间 模式与内模式间C 子模式与外模式间 模式与内模式间D 子模式与内模式间 外模式与内模式间 5 1数据库系统的基本概念补充习题 填空题 1 数据库系统的三级模式分别为 模式 内部级模式与外部级模式 2 数据的物理结构 包括存储结构 存取方式等 的改变都不影响数据库的逻辑结构 从而不致于引起应用程序的变化 这是指数据的 概念或概念级 物理独立性 数据模型及其要素 5 2数据模型 5 2 1数据模型 模型 是对客观世界中复杂对象的描述 例如 在军事上使用沙盘描述战场实况 在建筑上用外貌图 平面图和侧面图描述一个建筑物的外部特征和内部结构 数据模型 数据模型是描述数据的结构和性质 数据之间的联系以及施加在数据或数据联系上的一些限制 数据模型及其要素 5 2数据模型 5 2 1数据模型 数据结构 主要描述数据的类型 内容及数据间的联系 是对系统静态特性的描述数据操作 主要描述在相应数据结构上可进行的操作 是对系统动态特征的描述 数据约束 主要描述数据结构内数据间的语法 语义联系 他们之间的制约与依存关系 必须遵守的通用的完整性约束 是一组完整性规则的集合 从而保证数据的正确性 有效性 数据模型要素 2 数据模型的分类 5 2数据模型 如同在建筑设计和施工的不同阶段需要不同的图纸一样 在实施数据库应用中也需要使用不同的数据模型 概念模型 也称信息模型 逻辑模型和物理模型 概念模型独立于计算机系统 它完全不涉及信息在计算机系统中的表示 只是用来描述某个特定组织所关心的信息结构 是按用户的观点对数据和信息建模 是对企业主要数据对象的基本表示和概括性描述 主要用于数据库设计 5 2 1数据模型 2 数据模型的分类 5 2数据模型 5 2 1 逻辑模型是直接面向数据库的逻辑结构的 通常有一组严格定义的 无二义性的语法和语义的数据库语言 人们可以用这种语言来定义 操纵数据库中的数据 物理模型是对数据最低层的抽象 它描述数据在磁盘或磁带上的存储方式和存取方法 从概念模型到逻辑模型的转换是由数据库设计人员完成的 从逻辑模型到物理模型的转换是由DBMS完成的 一般人员只需要了解逻辑模型就行了 5 2 1数据模型 2 数据模型的分类 5 2数据模型 5 2 1 数据模型分类 概念数据模型 简称概念模型 是按用户的观点对客观事物建模 该模型独立于计算机系统 与具体的数据库管理系统无关 主要用于数据库设计 较为有名的概念模型有E R模型 面向对象模型等 逻辑数据模型 又称数据模型 它是一种面向数据库系统的模型 概念模型只有在转换成数据模型后才能在数据库中得以表示 逻辑数据模型有层次模型 网状模型 关系模型 面向对象模型等 物理数据模型 又称物理模型 此模型给出数据模型在计算机上物理结构的表示 5 2 1数据模型 3 逻辑数据模型的分类 5 2数据模型 1 层次模型 层次模型的结构是树型结构 树中的每个结点代表一种记录类型 这些结点满足如下规律 有且仅有一个结点无双亲 根结点 其它结点有且仅有一个双亲结点 2 网状模型 以记录型为结点的网络 反映现实世界事物间复杂的联系 一个结点可以有多个双亲结点 多个结点可以无双亲结点 有层次模型 网状模型 关系模型 面向对象模型等 5 2 1数据模型 层次模型 网状模型 5 2数据模型 5 2 2E R模型与E R图 E R模型是一种广泛使用的概念数据模型 该模型将现实世界的要求转化成实体 联系 属性等几个基本概念 并可用E R图直观地表示出来 5 2数据模型 5 2 2E R模型与E R图 1 E R模型中的有关概念 客观存在并可相互区别的事物 一个学生 一个部门 学生的一次选课 1 实体 Entity 实体所具有的某一特性 一个实体可以由若干个属性值来描述 如学生实体可以由 学号 姓名 性别 出生日期 等属性的属性值 20061001 张三 男 1988 5 6 来描述 2 属性 Attribute 5 2数据模型 5 2 2E R模型与E R图 1 E R模型中的有关概念 3 实体型 EntityType 具有相同属性的实体所具有的共同特征和性质 用实体名及属性名集合来抽象 例如 学生 学号 姓名 性别 出生年月 系 入学时间 4 实体集 EntitySet 同种实体的集合 全体学生就是一个实体集 5 2数据模型 5 2 2E R模型与E R图 1 E R模型中的有关概念 5 码码是能唯一标识实体的属性 任意两个同类的实体不可能有相同的码 如学生学号可作为学生实体的码 人的身份证号可作为人实体的码 6 域属性的合理取值范围 性别属性的域为 男 女 成绩属性域为0到150 5 2数据模型 5 2 2E R模型与E R图 1 E R模型中的有关概念 7 联系 现实世界中事物间的联系 分类 实体内部的联系 指实体的各属性之间的联系 如出生年份和年龄 总成绩和各科成绩 职员 实体的 岗位 属性与 工资等级 属性之间就有一定的联系 约束 实体之间的联系 指不同实体之间的联系 5 2数据模型 5 2 2E R模型与E R图 1 E R模型中的有关概念 7 联系 现实世界中事物间的联系 三种联系 一对一 简记1 1 A中一个实体至多同B中的一实体相联系B中的一个实体也至多同A中的一个实体相联系 一对多 简记1 m A中一个实体同B中多个实体相联系B中的一个实体只可同A中一个实体相联系 多对多 简记m n A中一个实体同B中多个实体相联系B中的一个实体可同A中多个实体相联系 学校 校长 班级 学生 老师 学生 5 2数据模型 5 2 2E R模型与E R图 2 E R模型的图示法 在E R图中 用不同的几何图形表示E R模型中的三个概念与两个联接关系 三个概念 实体 属性和联系 实体集 联系 与属性之间关系 一个实体可有若干属性 实体及其属性构成实体完整描述 实体 集 与联系 实体集之间不能建立直接关系 而只能通过联系才能建立起联接关系 如老师与学生是通过选课建立联系 5 2数据模型 5 2 2E R模型与E R图 2 E R模型的图示法 1 实体集 用矩形表示 矩形内写上实体集的名字 2 属性 用椭圆形表示属性 其内写上属性名称 3 联系 用菱形表示联系 其内写上联系名 4 实体集 联系 与属性间的联接关系 用无向线段表示 5 实体集与联系间的联接关系 用无向线段表示 在线上标注联系类型 1 1 1 n n m 1 1模型 E R模型 学生 学号 姓名 年龄 校园卡 卡号 学号 拥有 1 1 性别 部门 1 n模型 E R模型 学生 学号 姓名 年龄 班级 班号 班主任 属于 n 1 性别 班长 m n模型 E R模型 学生 学号 姓名 年龄 课程 课号 课名 选修 n m 性别 学分 学时 两个不同型实体间的联系 两个以上实体间的多元联系 施行社和景点及游客三个实体间存在三元联系 学生管理系统的E R模型 5 3关系数据库 5 3 1关系数据模型 定义 用关系 表格数据 表示实体和实体之间联系的模型称为关系模型 关系就是二维表格 学生人事登记表 关系数据库是基于关系数据模型的数据库 特点之一是很多数学理论可以表示关系模型的数据操作 关系模型的结构 学生人事记录表 关系名 关系 元组 行 记录 属性 列 是5元关系 主码 男女 域 分量 属性值 关系模式 学生 学号 姓名 性别 年龄 籍贯 属性名 5 3关系数据库 5 3 1关系数据模型 相关术语 元组 记录 表格中每一行称作一个元组 也称为记录 关系是元组的集合 一个表由若干个记录组成 分量 元组中每一个属性值称为元组的一个分量 一个元组是由n个元组分量组成 表中的列而言 n元关系 每一列是一个属性 列名为属性名 如果表格有n列 n个属性 该关系是n元关系 候选键 码 在众多的属性中 可唯一标识元组的属性或属性集合叫候选键或码 域 属性的取值范围 5 3关系数据库 5 3 1关系数据模型 关系的直观概念概括表 Table 也称关系列 Field 也称字段 分量或者属性行 Row 也称元组 记录码 Key 也称主键 关系模式 对关系的描述关系模式表示 关系名 属性1 属性2 属性3 5 3关系数据库 5 3 1关系数据模型 关系应满足性质 l 表格中的每一列都是不可再分的 每行和每列的相交点仅包含单个值 2 任何列中的值必须是同一类型的 各列被指定一个相异的名字 3 各行相异 不允许重复 4 行 列次序均无关 5 3关系数据库 5 3 2关系代数 1 关系模型基本操作 四种 插入 在关系中增添一些元组 记录 删除 在关系中删除一些元组 记录 修改 对关系中的某些元组 记录 修改其属性值 查询 在一个关系或多个关系间做查询 查询的结果也为关系 2 关系运算定义 以集合代数运算方法对关系进行数据操作 5 3关系数据库 5 3 2关系代数 2 关系运算定义 以集合代数运算方法对关系进行数据操作 三要素 运算对象 运算符和运算结果 分类 传统的集合运算 完全把关系看作元组集合 有并运算 交运算和差运算 专门的关系运算 选择 投影和连接运算 5 3关系数据库 5 3 2关系代数 2 关系运算 1 并运算U R R和 是同类型关系 结果也是关系 其元组由R元组 元组组成 去除重复元组 R S T RUS S R 5 3关系数据库 5 3 2关系代数 2 关系运算 2 差运算 R R和S的差是由属于R但不属于S的元组构成的集合 R S T R S R S 5 3关系数据库 5 3 2关系代数 2 关系运算 3 交运算 R S 所得是由那些既在R内又在S内的有序元组所组成 R S T R S R S 1 并运算U R R和 是同类型关系 结果也是关系 其元组由R的元组 元组组成 去除重复元组 2 差运算 R R和S的差是由属于R但不属于S的元组构成的集合 3 交运算 R S 所得是由那些既在R内又在S内的有序元组所组成 补例 设R和S是任意两个关系 则R S等价于 A R S SB R R S C S R S D R R S 分析 可以参考下图 D 5 3关系数据库 5 3 2关系代数 2 关系运算 4 笛卡尔积运算 对于两个关系的合并操作可以用笛卡尔积表示 设有n元 即n列 关系R及m元 即m列 关系S 分别有p q个元组 或记录 关系R与S经笛卡尔积记为R S 这是一个n m元关系 元组个数是p q 由R与S的有序组组合而成 即在新关系中 列数 两个源关系中列之和行数 两个源关系中行数的乘积 笛卡尔积运算举例 5 3关系数据库 5 3 2关系代数 2 关系运算 5 投影运算 针对关系中的某些列操作 就是从关系中取出若干属性 列 组成一个新关系 记作 x R t X t R X为R中的属性 例如 对学生选课登记表进行查询 查询出学生姓名与选修课程的对应关系 就可利用投影操作 得到满足要求的结果关系 举例 对学生选课登记表查询 查询学生和选修课程对应关系 姓名 选修课程 学生选课登记表 投影运算 5 3关系数据库 5 3 2关系代数 2 关系运算 6 选择运算 针对关系中的某些行操作 在关系中选取满足给定条件的所有元组 即记录 F R t t R F t 真 其中 F为选择条件 是一个逻辑表达式 例 对学生选课登记表查询 查询所有选修 软件工程 的学生 举例 对学生选课登记表查询 查询所有选修 软件工程 的学生 选择运算 选修课程 软件工程 学生选课登记表 举例 对学生表查询 查询年龄等于18岁的女生 年龄 18 性别 女 学生表 举例 查询学生表中年龄小于19岁的学生的姓名及所在系 姓名 所在系 年龄 19 学生表 5 3关系数据库 5 3 2关系代数 2 关系运算 7 自然连接 将两个具有公共属性的关系 按公共属性值相等的条件连接成一新的关系 上面两个关系都具有公共属性 学号 则连接结果如下 注意 自然连接后的关系中只保留一个学号属性 不能有两个学号属性 5 3关系数据库 5 3 2关系代数 关系运算小结 1 关系运算中的交运算 并运算和差运算要求的条件是运算前的两个关系是同类型的 即两个关系中的属性名 表中的第1行 及属性的类型必须一致 2 笛卡尔积运算 两个关系不要求具有相同的属性 3 自然连接是将两个具有公共属性的关系 按公共属性值相等的条件连接成一新的关系 要求两个关系中有一个同类型的公共属性 5 3关系数据库 5 3 2关系代数 补例 有 个关系模式 学生表 学号 姓名 年龄 专业 籍贯 课程表 课号 课名 学时 学分 选课表 学号 课号 成绩 如果要查询选修 号课的学生的姓名 需要的关系代数运算包括下面哪几项 选择 投影 自然连接 差运算 ABC 5 3关系数据库 5 3 2关系代数 补例 判断对错有 个关系模式 减价图书 书号 书名 作者 价格 出版社 脱销图书 书号 书名 作者 价格 出版社 它们可以直接进行差运算得到脱销的减价图书 错误 应该是交运算 5 3关系数据库 5 3 3由E R图导出关系模型 定义 根据实体及其联系模型生成数据库中的表 并确定表的列 规则 每个独立实体转换为一个关系 即二维表 然后根据E R图中各实体联系方式的不同 用不同的方法实现关系之间的联系 举例 一个实体E R模型转换为关系表 学生实体E R图 表中的列就是E R图中实体所具有的属性 转换 5 3关系数据库 5 3 3由E R图导出关系模型 两个实体的E R图 三种不同联系方式的E R图转换 1 一对一联系 两个实体集转换为关系 在两实体对应的任一关系中多设一个属性作为外键 此外键是与之关联的实体的主键 5 3关系数据库 5 3 3由E R图导出关系模型 两个实体的E R图 三种不同联系方式的E R图转换 举例 两个实体 一对一联系 实体 系属性 系编号 系名字 系性质 E R图 系 系编号 系名字 系性质 系主任 年龄 姓名 实体 系主任属性 年龄 姓名 5 3关系数据库 5 3 3由E R图导出关系模型 两个实体的E R图 三种不同联系方式的E R图转换 举例 两个实体 一对一联系 实体 系属性 系编号 系名字 系性质 E R图 系 系编号 系名字 系性质 系主任 年龄 姓名 实体 系主任属性 年龄 姓名 拥有 1 1 导出 系 系编号 系名字 系性质 系主任 年龄 姓名 系编号 关系 5 3关系数据库 5 3 3由E R图导出关系模型 两个实体的E R图 三种不同联系方式的E R图转换 举例 两个实体 一对一联系 系 系编号 系名字 系性质 系主任 年龄 姓名 系编号 即 1 一对一联系 两个实体集转换为关系 在两实体对应的任一关系中多设一个属性作为外键 此外键是与之关联的实体的主键 5 3关系数据库 5 3 3由E R图导出关系模型 两个实体的E R图 三种不同联系方式的E R图转换 2 一对多联系 两个实体集转换为关系 把 一 方实体的主键纳入 多 方实体对应的关系中作为外键 若联系包含属性 则将属性也纳入 多 方实体对应的关系中 教师 年龄 性别 姓名 拥有 1 n 系 系编号 系名字 系性质 教师 年龄 性别 姓名 系编号 导出 5 3关系数据库 5 3 3由E R图导出关系模型 两个实体的E R图 三种不同联系方式的E R图转换 3 多对多联系 两个实体集转换为关系 再为联系单独建立一个关系 该关系中包含联系双方实体的主键 选修 m n 学生 学号 姓名 班级 课程 编号 名称 学分 选修 学号 编号 成绩 导出 成绩 新关系包含了两个多对多实体的主键及其联系属性 5 3关系数据库 5 3 4关系数据库规范化理论 一个数据库应用系统往往涉及到多方面的复杂的数据信息 例如 在学生管理信息系统中 要涉及到学生 院系 宿舍 课程 成绩等数据 再例如 在产品销售数据库中设计到产品 类别 仓库 销售单 销售明细单等数据 如何将所涉及到的数据组织存入到数据库中 是放在一个表中存放还是分放在几个表中存放 每个表应由哪些属性组成 怎样设计才是科学合理的呢 解决之法是用RDB设计理论 规范化理论 例如 产品报价数据库 5 3关系数据库 5 3 4关系数据库规范化理论 建立一个关系数据库系统 首先要考虑怎样建立数据模式 即应该构造几个关系模式 每个关系模式中需要包含哪些属性等 这是数据库设计的问题 关系规范化主要讨论的就是建立关系模式的指导原则 所以有人把关系数据库规范化理论称为设计关系数据库的规范化理论 5 3关系数据库 5 3 4关系数据库规范化理论 1 关系模型的完整性规则 定义 是对关系的某种约束条件 通过三类完整性约束条件描述 1 实体完整性 关系中的主关键字不能为空 如学生关系中的 学号 属性值不能为空 一个关系对应现实世界的一个实体集 关系中每个元组对应一个实体 实体都具有唯一性标识 5 3关系数据库 5 3 4关系数据库规范化理论 1 关系模型的完整性规则 2 参照完整性 关系中外关键字的取值 只能是空值或外键对应关系的主键值 外键 A是关系R中一属性 同时又是关系S主键 则A为R外键例 学生 学号 姓名 年龄 性别 专业号 专业 专业号 专业名称 学号 是关系 学生 中的主关键字 输入时值不能为空 专业号 是关系 专业 的外键 空值 表示尚未给该学生分配专业非空值 必须是目标关系 专业 关系中某个元组的 专业号 值 1 实体完整性 参照完整性例 学生关系 课程关系 学习成绩关系 外键 外键 主键 主键 职工表 R2 部门表 R1 主键 外键 参照完整性例 外键的取值 只能是空值或外键对应关系的主键值 补例 设有关系R A B C 和S D A 如题10图所示 R的主键为A S的主键为D且外键为A 则关系S中违反参照完整性约束的元组是 A 1 2 B 2 NULL C 3 3 D 4 4 D 5 3关系数据库 5 3 4关系数据库规范化理论 1 关系模型的完整性规则 2 参照完整性 1 实体完整性 3 用户定义完整性 通常定义除主关键字与外关键字之外的其他属性取值的约束 前两种是任何关系数据库系统应满足的数据约束条件 用户定义完整性是用户定义具体数据库时 由具体应用环境来决定应满足的约束条件 例 性别 男 女 成绩 0 100 或 0 150 课程学分 1 3 用户定义的完整性 5 3关系数据库 5 3 4关系数据库规范化理论 2 函数依赖 数据依赖 限定组成关系的各元组必须满足的完整性约束条件 如属性的取值范围 或者属性值间的相互关联 即数据依赖 意义 恰当的数据依赖是必要的 但不必要的数据依赖会对关系模式产生不好的影响 数据冗余 更新 插入出现异常等 进行数据库设计时要深入分析数据间的依赖 5 3关系数据库 5 3 4关系数据库规范化理论 2 函数依赖 关系模式中的数据依赖有多种 比较重要的是函数依赖 多值依赖 连接依赖 函数依赖 关系模式中属性间的普遍存在函数依赖 例 学生 学号 姓名 性别 年龄 所在系 该关系模式中存在以下函数依赖 学号 姓名 学号 性别 学号 所在系 多值依赖 一门课由多个老师上 使用同一套参考书 连接依赖 关系与关系间往往存在联系 5 3关系数据库 5 3 4关系数据库规范化理论 2 函数依赖函数依赖 一个关系模式中 如果某个属性组X的值确定 则其他属性的值唯一确定 称此属性组函数决定其他的属性 或称其他属性函数依赖于此属性组 记为X Y 5 3关系数据库 5 3 4关系数据库规范化理论 函数依赖的分类 平凡的函数依赖 若X Y 并且Y是X的子集 非平凡的函数依赖 若X Y 并且Y不是X的子集 例如 成绩表 学号 课号 成绩 学号 课号 学号 平凡的函数依赖 学号 课号 成绩 非平凡的函数依赖 说明 1 对任一关系模式 平凡函数依赖必然成立 2 这里只讨论非平凡函数依赖 3 非平凡函数依赖易产生问题 5 3关系数据库 5 3 4关系数据库规范化理论 函数依赖的分类 完全函数依赖 若X Y X的任意子集X 都没有X Y部分函数依赖 若X Y 并且存在X的子集X 有X Y 例如 完全函数依赖 课程号 教师部分函数依赖 学号 课程号 教师 3 若有X Y 但没有Y X 且有Y Z 则X Z成立 则称为Z传递函数依赖于X 例如 学号 课号 课号 成绩 5 3关系数据库 5 3 4关系数据库规范化理论 3 关系模型的范式 目的是构造好的数据库 关系数据库中的关系要满足一定的要求 满足不同程度的要求为不同的范式 规范化的理论是E F Codd首先提出的 他认为 一个关系数据库中的关系 都应满足一定的规范 才能构造出好的数据模式 Codd把应满足的规范分成几级 每一级称为一个范式 NormalForm 例如满足最低要求 叫第一范式 1NF 在1NF基础上又满足一些要求的叫第二范式 2NF 第二范式中 有些关系能满足更多的要求 就属于第三范式 3NF 后来Codd和Boyce又共同提出了一个新范式 BC范式 BCNF 以后又有人提出第四范式 4NF 和第五范式 5NF 范式的等级越高 应满足的条件也越严 5 3关系数据库 5 3 4关系数据库规范化理论 3 关系模型的范式 各种范式之间的关系 范式的等级越高 应满足的条件也越严 5 3关系数据库 5 3 4关系数据库规范化理论 3 关系模型的范式 1 第一范式 关系R中的每个属性 列 都是不可再分的 或每个属性的域都只包含单纯值 而不是一些值的集合 则称关系R满足第一范式 记为R 1NF 例 下面的关系不符合第一范式 因为属性的域值可以拆分 5 3关系数据库 5 3 4关系数据库规范化理论 3 关系模型的范式 1 第一范式 1 更新困难 如果1011同学想把选修课程改为 Access数据库 专业英语 则系统在处理上面临二义性 1 修改1011记录的课程属性值 2 把学号属性值扩充为 1011 1012 2 插入困难 无法在此关系中加入 成绩 属性 5 3关系数据库 5 3 4关系数据库规范化理论 3 关系模型的范式 1 第一范式 第一范式的判断方法 检查关系表中每个属性值是否都是不可再分解的最小数据单位 将非第一范式规范为第一范式的方法 依次检查每个属性的取值 如果是组合情况 即不是最小单位 就进行属性值的最小化拆分 转换为符合第一范式 5 3关系数据库 5 3 4关系数据库规范化理论 3 关系模型的范式 2 第二范式 若R 1NF 并且每个非主属性都完全函数依赖于关键字 则称为是第二范式的模式 记为R 2NF 例 R1 姓名 学号 年龄 课程编号 课程名 学号是候选关键字 请分析该关系数据库是否满足第二范式 分析 上表每个属性都是单纯值 满足第一范式非主属性 姓名 年龄 函数依赖于 学号 学号确定 则唯一确定姓名 年龄 非主属性 课程编号 课程名 函数不完全依赖于 学号 一个学号不是唯一确定课程编号 课程名 因为存在非关键字属性不完全依赖于候选关键字的情况 所以R1不满足第二范式 不符合第二范式的实例及缺点 学生选课关系表 主键为 学号 课号 插入异常 无法插入还未选课的 由于该学生无课号属性 其相应的码值一部分为空 故该学生的固有信息无法插入 删除异常 某学生只选了一门课 若现在要放弃这门课 由于课号是主键的一部分 整个记录必须删除 该学生的其他信息也删除了 修改复杂 若张红从计算机系转入动画系 必须修改系负责人 该生选修了多门课 要修改多条记录 将不符合第二范式的变为符合第二范式实例 将非第二范式规范为第二范式的方法1 将能完全依赖主键的属性从关系中提取出来 同主键一起组成一个关系如 SC 学号 课号 成绩 2 将剩余的属性同能完全依赖的主键的一部分组成一个关系SD 学号 姓名 系 系负责人 补充习题讲解 1 用树形结构来表示实体之间联系的模型称为 A 关系模型B 层次模型C 网状模型D 数据模型2 下列说法中 不属于数据模型所描述的内容的是 A 数据结构B 数据操作C 数据查询D 数据约束3 下面列出的数据模型中 是概念数据模型 A 关系模型B 网状模型C 层次模型D 实体 联系模型4 关系表中的每一横行称为一个 A 元组B 字段C 属性D 码 BCDA 补充习题讲解 5 关系数据库管理系统能实现的专门关系运算包括 A 排序 索引 统计B 选择 投影 连接C 关联 更新 排序D 显示 打印 制表6 索引属于 A 模式B 内模式C 外模式D 概念模式7 在关系数据库中 用来表示实体之间联系的是 A 树结构B 网结构C 线性表D 二维表8 将E R图转换到关系模式时 实体与联系都可以表示成 A 属性B 关系C 键D 域 BBDB 9 设属性A是关系R的主属性 则属性A不能取空值 NULL 这是A 实体完整性约束B 参照完整性约束C 用户定义完整性约束D 域完整性约束10 下列关系运算中 不要求关系R和S具有相同的属性个数 A R SB R SC R SD R S11 在数据库技术中 独立于计算机系统的模型是 A E R模型B 层次模型C 关系模型D 网状模型12 按条件f对关系R进行选择 其关系代数表达式为 A R X RB R X RC f R D f R i j ADAC 13 在数据库的三级结构中 外模式有 A 1个B 2个C 3个D 任意多个14 下列关于 联系 的描述 正确的是 A 联系不是实体 也没有属性B 联系是实体 但没有属性C 联系不是实体 但有属性D 联系是实体 也有属性15 对关系S和关系R进行集合运算 结果中既包含S中元组也包含R中元组 这种集合运算称为 A 并运算B 交运算C 差运算D 积运算 DCA 16 关系数据模型是目前最重要的一种数据模型 它的三要素分别为 A 外模式 模式 内模式B 数据结构 数据更新 数据查询C 数据结构 关系操作 完整性约束D 实体完整 参照完整 用户自定义完整17 有关系模式 选课表 学号 姓名 课程 成绩 主码应该是 A 学号B 学号 姓名 C 课程D 学号 课程 CD 1 如果一个工人可管理多个设施 而一个设施只被一个工人管理 则实体 工人 与实体 设备 之间存在 联系 2 关系数据库管理系统能实现的专门关系运算包括选择 连接和 3 关系模型的完整性规则是对关系的某种约束条件 包括实体完整性 和自定义完整性 4 数据模型按不同的应用层次分为三种类型 它们是 数据模型 逻辑数据模型和物理数据模型 5 数据库系统中实现各种数据管理功能的核心软件称为 1 一对多或1 N或1 n 2 投影3 参照完整性4 概念5 数据库管理系统或DBMS 6 关系模型的数据操纵即是建立在关系上的数据操纵 一般有 增加 删除和修改四种操作 7 在一个ER模型中 有 个不同的实体集 课程 课号 课名 学时 其中 课号 为主键 教师 编号 姓名 年龄 如果每位教师只能讲一门课 根据ER模型转换成关系模型的规则 转换成关系模式 课程 课号 课名 学时 教师 编号 姓名 年龄 6 查询7 课号 8 数据库管理系统常见的数据模型有层次模型 网状模型和 三种 9 设关系R是4元关系 有5个元组 关系S是一个5元关系 有6个元组 关系T是R与S的笛卡尔积 即T R S 则关系T是 元关系 包括 个元组 10 在关系数据库管理系统中 表是数据库的三级模式结构中的 模式 而用户创建的视图在数据库的三级模式结构中属于 模式 11 数据库的物理结构在计算机存储空间中的存放形式称为数据库的 12 在一个ER模型中 有 个不同的实体集和 个多对多的联系 根据ER模型转换成关系模型的规则 转换成关系模式的数目是 个 8 关系模型9 9 3010 概念 外11 内模式12 3 5 4数据库设计 成功的数据库设计是应用系统开发的基础 数据库设计是一项非常复杂的工作 必须严格按照工程化步骤实施 数据库设计还需要丰富的经验 数据库设计要求形成规范完整的文档资料 5 4数据库设计 目的 设计出能满足用户需求的性能良好的数据库 基本任务 根据用户对象的信息需求 处理需求和数据库支持环境 硬件 操作系统与DBMS 设计出数据模式 信息需求 主要是指用户需要从数据库中获得信息的内容与性质 确定用户对象的数据及其结构 它反映了数据库的静态要求 处理需求 表示用户对象的行为和动作 即用户要完成什么处理功能 它反映了数据库的动态要求 5 4数据库设计 目的 设计出能满足用户需求的性能良好的数据库 基本任务 根据用户对象的信息需求 处理需求和数据库支持环境 硬件 操作系统与DBMS 设计出数据模式 数据库设计中的两种方法 面向数据的方法 以信息需求为主 兼顾处理需求面向过程的方法 以处理需求为主 兼顾信息需求 5 4数据库设计 数据库设计过程 需求分析 概念设计 逻辑设计 物理设计 实施与运行维护 调研分析 E R模型 转换成某种DBMS支持的逻辑数据模型 如关系型 在存储设备上选定存储结构和方法 一般由DBMS完成 5 4数据库设计 1 需求分析 1 任务 调查现实世界要处理的对象 明确用户的各种需求 在此基础上确定新系统的功能 2 步骤 收集资料 了解现行业务处理流程 对新系统的要求 收集全部数据资料 如报表 合同 档案 单据 计划等等 分析整理资料 对收集到资料分析 抽象与概括 确定数据库信息内容与数据处理内容 绘制数据流图 使用数据流图描述系统的功能 编写数据字典 对数据流图中各类数据进行描述的集合 5 4数据库设计 2 概念设计 1 目的 在需求分析的基础上 确定系统中所包含的实体 分析每个实体所具有的属性 以及实体之间的关系 5 4数据库设计 2 概念设计 2 方法 集中式模式设计法 根据需求由一个统一机构或人员设计一个综合的全局模式 它强调统一与一致 适合于小型或并不复杂的单位或部门 E R模型与视图集成法 局部 集成 将一个单位分解成若干个局部应用 先对每个局部作局部模式设计 建立各个部分的视图即分E R图 然后以各视图为基础进行集成 集成过程需对视图作修正 然后合并成全局概念模式 这种方法能较好地反映需求 适用于大型系统的设计 5 4数据库设计 2 概念设计 3 数据库概念设计 E R模型与视图集成法 的过程首先选择局部应用 再进行局部视图设计即E R图设计 最后对局部视图进行集成得到概念视图 选择局部应用 根据系统的具体情况 在多层的的数据流图中选择一个适当层次的数据流图 让这组图中每一部分对应一个局部应用 以这一层次的数据流图为出发点 设计分E R图 5 4数据库设计 2 概念设计 3 数据库概念设计 E R模型与视图集成法 的过程 局部视图设计次序 补充 局部视图设计一般有3种设计次序 自顶向下 由底向上和由内向外 自顶向下 先从抽象级别高且普遍性强的对象开始逐步细化 具体化与特殊化 由底向上 先从具体的对象开始 逐步抽象 普遍化与一般化 最后形成一个完整的视图设计 由内向外 先从最基本与最明显的对象着手 逐步扩充至非基本 不明显的其它对象 5 4数据库设计 2 概念设计 3 数据库概念设计 E R模型与视图集成法 的过程 视图集成 视图集成的实质是将所有的局部视图统一并合并成一个完整的数据模式 在进行视图集成时 最重要的工作便是解决局部设计中的冲突 命名冲突 同名异义和同义异名两种 概念冲突 同一个概念在一处为实体 而在另一处是属性或联系 域冲突 相同的属性在不同视图中有不同值域约束冲突 不同的视图可能有不同的约束 5 4数据库设计 3 逻辑设计和物理设计逻辑设计 主要工作是将E R图转换成指定RDBMS 关系数据库管理系统 中的关系模式 物理设计 设计
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 石墨烯在智能汽车中的市场潜力与技术革新-洞察及研究
- 小学数学思维训练专项辅导教案
- 社交网络TSP问题研究-洞察及研究
- 餐饮企业节能减排管理实施方案
- 情感动态与行为关联分析
- 一级建造师法规考试真题解析
- 幼儿园中班趣味数学教案设计
- 电力设备故障诊断与维护实操手册
- 市政工程质量验收规范手册
- 小学奥数经典题及详细解题思路
- 医学院研究生招生宣传
- 大型活动安全风险评估报告
- 大数据分析与数据挖掘知识习题集
- GB/T 25820-2025包装用钢带
- 制约婚内家暴协议书
- 点云质量评估-全面剖析
- 形婚协议书合同完整版
- 海南时政面试试题及答案
- 2025年乡镇计划生育工作培训方案
- 砭石疗法培训学习资料
- 2025年湖南生物机电职业技术学院单招职业技能测试题库附答案
评论
0/150
提交评论