已阅读5页,还剩55页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据库技术及应用 第2章数据模型 1 2 本章知识点 概念数据模型重点讨论ER模型基本数据模型关系模型与关系数据库关系的完整性 层次数据模型网状数据模型关系数据模型对象数据模型 什么是数据模型 模型模型是我们研究 认识客观事物的一种方法 它的本质是抽象 是对现实原型所作一种抽象 即只关心与研究内容有关的因素而忽略无关的因素 借助模型可以把复杂的事物变的相对简单 便于我们认识和分析复杂的事物 3 数据模型用来描述事物的结构 语义及数据之间关系的模型叫做数据模型 1 概念数据模型 1 1概念数据模型的概念及所解决的问题 概念数据模型被用来对现实世界建模 描述客观事物的属性特征及其关系 概念数据模型 概念数据模型涉及的术语及对象 实体 实体集实例 实体描述客观存在并可以相互区分的事物可以是一个具体的人或物如张三 一辆汽车等可以是抽象的事件或概念如一场演出 一名学生选了一门课程等 7 实体集标识和描述具有相同属性特征的事物的集合 即同类对象的集合 由其名字及其属性集定义 例如 系 系号 系名 系主任 属性描述实体集的某一特征和性质 属性值一个属性的取值 8 域指一个属性的取值范围码指能够唯一标识实体集中每个实例的属性或属性组联系被用来描述事物及事物之间的关系 9 实体集之间的联系 1 1 1 n和m n 10 对于父亲实体集中的一个实例 在子女实体集中存在多个实例与之联系 反之 对于子女实体集中的一个实例 父亲实体集中至多只有一个实例与之联系 实体集A中的每一个实例 实体集B中有若干个实例与之联系 实体集B中的每个实例 实体集A中有若干个实例与之联系 一个实体集中记录之间的关系 员工 工作证号 姓名 性别 职位 薪水 11 进一步的例子 12 概念数据模型的典型代表 ER Entity Relationship 方法IDEF1X数据建模方法UML UnifiedModelingLanguage 的类图 1 2E R EntityRelationship 模型 14 实体集在ER图中实体集用长方形框表示 框内写上实体集的名称 例如 ER模型图形表示 属性用椭圆或圆角框表示 里面写上属性名称且用线段将实体集和它所拥有的全部属性连接起来 例如 联系用菱形表示 菱形框内写上联系名 并用线段将菱形框及与之相关的实体集相连 在线段旁注明联系的基数 ER方法建模实例 对选课系统设计的数据 系 学生 课程 教师建模步骤如下 1 标识及定义实体集 标识和描述具有相同属性特征的事物的集合从原始数据中采用分类标识 概括命名方法抽象出系实体集 学生实体集 课程实体集 教师实体集 用图形方式表示如下 17 2 标识和定义实体集之间的联系 描述事物之间的联系按照业务或管理规则标识和定义联系 例如 一个系管理多名学生 每名学生只属于一个系 1 n 一名学生选修多门课程 每门课程由多名学生选修 m n 一个系聘用多名教师 每名教师只受聘于一个系 1 n 一名教师讲授多门课程 一门课程由多名教师讲授 m n 3 定义每个实体集的属性 从原始数据中选择 确认和命名每个实体集的属性例如 学生实体集由属性学号 姓名 性别 出生年月描述和说明 课程实体集由课程号 课程名 学分 上课时间 课容量从原始数据中 依次列出每个实体集的全部属性 21 4 画出选课系统完整的ER图 概念数据模型关注的不是客观事物自身发展 变化的规律 它关注和研究如何真实 准确地把客观事物的属性特征 事物之间的联系表示出来 且语义清楚 容易理解 其目标是从需求的角度对数据和信息建模 把现实世界中的客观对象抽象为某种信息结构 这种信息结构不依赖于具体的计算机系统 2 基本数据模型 基本数据模型 结构数据模型 结构数据模型的概念及所解决的问题 结构数据模型 结构数据模型是数据库系统采用的数据模型或形式框架 这种模型依赖于计算机 结构数据模型被用于在机器世界中组织数据 存储数据和操作数据 25 数据库系统支持的数据模型有 层次模型 树 网状模型 图 关系模型面向对象模型 26 2 1层次模型 典型系统 IBM公司IMS系统 70年代初推出 主要特征 树型结构根结点只有一个根结点以外的结点有且只有一个父结点 27 层次模型 28 学生 课程 选课记录 选课记录 E R模型 层次模型 系 2 2网状模型 主要特征 图型结构允许多个结点无双亲一个结点可以有多个双亲结点之间允许有复合链 29 ER模型转换为网状模型 30 E R模型 网状模型 网状模型 指针实现 记录类型联系类型查尔斯 巴赫曼 CharlesW Bachman 因主持开发了最早的网状DBMS 解决了数据的集中控制与统一管理等1973年获图灵奖 31 cobol 2 3关系模型 关系是一张命名的二维表表中的每一行称为一条记录每一列称为一个属性 32 学生 记录 关系名 属性名 属性值 关系数据模型特点 模型概念简单现实世界中抽象出来的数据及数据之间的联系均用二维表格 关系 存储操作方便 系统重构容易具有完备的数据库理论支持埃德加 科德 EdgarFrank Codd 因首次提出了关系数据模型和关系数据库理论 1981年获图灵奖 33 2 4对象 OrientedObject 数据模型 按照对象方法组织数据 把一个对象的属性特征和行为特征封装成一个能动的整体 通过OID识别每一个对象 特点 支持复杂的数据类型 向量 矩阵 有序集等 语义强封装性继承性支持长事务等 数据库管理系统支持数据模型 按计算机系统的观点组织 描述 存储数据的结构及操作特征 DBMS支持的数据模型由三部分组成 数据结构 描述数据库中存储的数据及数据之间的关系 数据操作 描述数据库中存储的数据支持的操作 数据约束 描述数据库中存储的数据值满足的约束条件 概念数据模型与基本数据模型 36 37 数据模型是数据库系统的核心和基础 它为数据的描述和组织提供了方法和工具 使得数据的组织方式产生了变革 它为数据的存储和操作提供了结构和框架 使数据库系统实现了数据的集中控制和统一管理 3 关系模型与关系数据库 关系模型关系的定义关系代数与操作 40 用数学方法构建数据的存储结构 概念简单 容易理解 用数学方法操作数据 操作方便 关系模型坚固的数学基础 使得关系表达式可以被分析和转换成等价的表达式 使操作者不必关心其内部存储细节 3 1关系模型 3 2关系的定义 定义一 域 域 Domain 是值的集合 定义二 笛卡尔积 设D1 D2 Dn为一组域 D1 D2 Dn上的笛卡尔积定义为 D1 D2 Dn d1 d2 dn di Di i 1 2 n 定义三 关系 笛卡尔积D1 D2 Dn的子集叫做在域D1 D2 Dn上的关系 Relation 用R D1 D2 Dn 表示 R是关系名 41 笛卡尔儿的例子 D1为学号的集合 202191 202192 D2为课程名的集合 数据库原理 英语阅读 D3为成绩的集合 90 100 D1xD2xD3 202191 数据库原理 90202191 英语阅读 90202192 数据库原理 90202192 英语阅读 90202191 数据库原理 100202191 英语阅读 100202192 数据库原理 100202192 英语阅读 100 42 D1xD2xD3 202191 数据库原理 90202191 英语阅读 90202192 数据库原理 90202192 英语阅读 90202191 数据库原理 100202191 英语阅读 100202192 数据库原理 100202192 英语阅读 100 43 关系描述现实世界的客观事物及其联系关系是笛卡儿积的子集 只有其中的一部分数据是有意义的 关系具有下列性质 不能有重复的元组元组上下无序所有属性都是原子项按属性名引用域时 左右无序 44 R D1 D2 D3 选课 学号 课程名 成绩 学号char 2 课程名char 10 成绩number 3 关系与关系模式 关系 定义为一系列域上笛卡儿积的子集关系模式 对关系数据结构的描述例如 选课 学号 课程名 成绩 关系是关系模式在某一时刻的状态或内容 在实际的应用中我们把关系和关系模式都叫做关系 通过上下文区别 45 3 3关系代数与操作 46 集合运算 47 关系操作 选择操作 从指定关系中选择满足条件的元组组成结果关系例如 列出 10 系男同学的全部信息 sex 男 anddno 10 student 48 关系操作 投影操作 从指定关系的属性集中选择属性子集组成结果关系如 检索出所有学生的学号 姓名 所在系的系号 sno sname dno student 49 关系操作 连接操作 join 将不同表中的相关记录连在一起组成一个跨表的结果记录R S Ra1 Ran Sb1 Sbj 1 Sbj 1 Sbm Rai Sbj RxS 这里 R S为R与S的笛卡儿积 50 关系操作 例如 查询计算机系学生的信息 列出 系名 姓名 性别 51 dep 系 student 学生 查询结果在两张表中 需要用连接操作 连接操作步骤 根据查询要求写出查询语句查询计算机系的学生信息 系名 姓名 性别 由于学生信息存储在student表中 而系名存储于dep表中 先做两个表的笛卡儿积 即 dep Student 然后 从笛卡儿积中选择两个关系中公共列值相等的行最后 使用投影操作 得到所需的信息 dname sname sex dep dno student dnoanddname 计算机 dep Student 52 连接操作过程 首先 对两个表做笛卡尔积其次 选出student dno dep dno的元组然后 选出属于 计算机 系的元组最后 得到所需信息 53 计算机62785523980001李宏男01 1月 19803030计算机62785523980015朱敏女01 1月 19855050自动化62785556980001李宏男01 1月 19803050自动化62785556980015朱敏女01 1月 19855010化学62773344980001李宏男01 1月 19803010化学62773344980015朱敏女01 1月 198550 3 4关系代数与SQL语言 从语言形式看关系代数用关系表达式表示查询要求 SQL语言使用了更适合于计算机操作的语言形式谓词表示查询要求 4 关系的完整性 主码约束外来码约束域约束 关系的完整性也称为完整性约束 IntegrityConstraint IC 是数据库管理系统为了防止不符合语义的数据 不满足条件的数据载入数据库 对数据库数据的正确性 有效性进行检查和控制的一种机制 4 1主码约束 主码约束保证关系中的主码属性值不空且唯一 通常主码须满足的两个条件 唯一性 在一个关系中 不存在两个元组 它们具有相同的主码值 例如 SNO是关系STUDENT的主码 不会有两个学生具有相同的SNO值 最小性 不存在一个属性可以从主码的属性集中去掉 而同时仍能保持上述唯一性 4 2外来码约束 若关系R中含有另一个关系S的主码Ks所对应的属性或属性组F 该属性或属性组F称为关系R的外来码 ForeignKey 则关系R中的每一个元组在属性组F上的值必须满足 或者取空值 或者等于S中某个元组的主码Ks的值 外来码约束 引用完整性 保证关系之间相关数据的完整性和一致性 4 3域 Domain 约束 域约束规则定义一个关系属性满足的条件 例如 在定义S
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 木质家具制造行业市场营销创新战略制定与实施分析报告
- 2025-2030年电动榨汁杯行业跨境出海战略分析研究报告
- 电子账务处理创新创业项目商业计划书
- 2023-2030年预制菜行业市场需求现状与趋势预测报告
- 临床颞骨CT解剖及影像学表现
- 5月信用月报:利差压缩进入下半场关注结构性机会
- 西安地区法硕考研初试 西安交大-西北大学复试真题及答案(2025版)
- 初中生学习疲劳缓解主题班会说课稿2025
- 2026年学前教育基础知识书
- 2026年工程技术员笔试题及答案
- GJB3206B-2022技术状态管理
- 2025年辽宁出版集团有限公司人才选聘考试笔试试卷【附答案】
- 远程面签管理办法
- 广东省广州市南沙区2025年中考英语一模试卷及答案
- 安全生产理念课件
- 《中医基础理论》课件-内生五邪
- 部编人教版初中七年级语文下册《怎样选材》课件
- 装配式建筑装饰装修技术 课件 模块七 集成卫浴
- MOOC 中国税法:案例·原理·方法-暨南大学 中国大学慕课答案
- MOOC 刑法学总论-西南政法大学 中国大学慕课答案
- 《液压元件符号》课件
评论
0/150
提交评论