数据模型关系数据库系统

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

例:学生选修课程
姓名 学号 系别
用椭圆表示 实体的属性
课程名 先修课 主讲老师
用无向边 把实体与 其属性连 接起来
学生
选修
课程
将参与联系的实 体用线段连接 成绩 用矩形表示实体集, 用菱形表示实 在框内写上实体名 体间的联系

码(Key):
– 能唯一标识实体的属性或属性组称作超码。 – 其任意真子集都不能成为超码的最小超码称为候
确定存储哪些数 据,建立哪些应 用,常用的操作 及对象有哪些等。 对需求分析所得 到数据的更高层 的抽象描述。 将概念模型所描述 的数据映射为某个 特定的DBMS模式 数据。
1、概念模型的表示

1976年,P.P.S.Chen提出E-R模型(EntityRelationship Model),用E-R图来描述概念模型。 观点:世界是由一组称作实体的基本对象和这些对象 之间的联系构成的。

实体(Entity): – 客观存在并可相互区分的事物叫实体。 – 如学生张三、工人李四、计算机系、数据库概论。 属性(Attribute): – 实体所具有的某一特性。一个实体可以由若干个 属性来刻画。 – 例如,学生可由学号、姓名、年龄、系、年级等 组成。 域(Domain): – 属性的取值范围。 – 例如,性别的域为(男、女),月份的域为1到 12的整数。
8个运算
三类完整性
关系代数语言 关系演算语言 SQL语言
实体完整性 参照完整性 自定义完整性
概念:关系(Relation),元组(Tuple),属性(Attribute), 主码(Key 同义词:唯一标识符), 域(Domain 属性的取值范围)
关系的数据结构(数学定义):表(笛卡尔乘积的子集)。 关系操作:选择Select、投影Project、连接Join、除 Divide、并Union、交Intersection、差Difference 表示方法:关系代数、关系演算、SQL
C4
C5
1 1 1
1 1 0
代码
2 0 2
付款方式
未购
wk.baidu.com
2 3 0
0 3 2
0
1
2
现金
支票
3
信用卡
层次模型
数据操作:查询、插入、删除和修改。 特点:没有父结点时不能插入子结点;删除父结点 时则相应删除子结点;修改时要考虑一致性问题。 存储结构:邻接法,链接法。
网状模型 与层次模型基本相似。
三、关系模型 关系数据库理论建立在严格的数学理论基础之上。 其理论奠基人为IBM的高级研究员E.F.Codd。 现在流行的数据库产品大都是关系数据库产品。 主要产品有Oracle、DB2、Sybase、Informix、SQL Server等。

关系 – 笛卡尔积D1×D2×…×Dn的子集叫做在域D1 , D2 ,…, Dn上的关系,用R(D1 , D2 ,…, Dn )表示。 – R是关系的名字,n是关系的度或目。 – 关系是笛卡尔积中有意义的子集。 – 关系也可以表示为二维表。 属性 关系TEACH(T, S, C) 元组

关系理论是建立在集合代数理论基础上的,有着坚实 的数学基础。

E.F.Codd于70年代初提出关系数据理论,他因此获得 1981年的ACM图灵奖。
早期代表系统
– SystemR:由IBM研制。 – INGRES:由加州Berkeley分校研制。

关系模型的组成:数据结构+关系操作+完整性约束
表结构
实体之间的关系。
举例:有一购销关系由三个实体组成,客户(张、
王、李),付款方式(现金、支票、信用卡),购买
商品(c1,c2,c3,c4,c5)
现金
支票
信用卡






c1 c2 c1 c2 c1
c3 c4
c3 c5
c4 c5
现金
支票
信用卡



c1
c2
c3
c4
c5
姓名 李 张 王
C1
C2
C3
先修课 主讲老师
学生
选修
课程

E-R模型设计举例
姓名 职工
姓名
电话
适于一个员 工只有一部 电话的情况
号码 联系 电话 电话
地址
职工
适于多个员工共有 一部电话,一个员 工多个电话,电话 本身具有多个属性 的情况。
2、数据模型 层次模型用树形结构(Tree)来表示各类实体及
实体之间的关系。
网状模型用图结构(Graph)来表示各类实体及
选码。
– 从所有候选码中选定一个用来区别同一实体集中
的不同实体,称作主码。
– 一个实体集中任意两个实体在主码上的取值不能
相同。
– 如学号是学生实体的码。 – 通讯录(姓名,邮编,地址,电话, Email,BP)

表示要点: – 实体集属性中作为主码的一部分的属性用下划线来 标明。
姓名
学号
系别
课程名
现实世界 认识抽象 概念模型 数据模型(机器世界)
数据模型的要求:可以比较真实地模拟现实;易于被 人理解;便于实现。
数据模型的组成:数据结构+数据操作+约束 常用的数据模型:层次模型,网状模型,关系模型。 面向对象模型是目前发展的方向之一
数据库设计过程 需求分析 概念数据库设计 逻辑数据库设计
E-R模型 ODL

实体型(Entity Type): – 实体名与其属性名集合共同构成实体型。 – 例,学生(学号、姓名、年龄、性别、系、年 级)。 – 注意实体型与实体(值)之间的区别,后者是前 者的一个特例。 – 如(9808100,王平,21,男,计算机系,2)是一 个实体。 实体集(Entity Set): – 同型实体的集合称为实体集。 – 如全体学生。

联系(Relationship): – 实体之间的相互关联。 – 如学生与老师间的授课关系,学生与学生间有班长 关系。 – 联系也可以有属性,如学生与课程之间有选课联系, 每个选课联系都有一个成绩作为其属性。 – 同类联系的集合称为联系集。 元或度(Degree): – 参与联系的实体集的个数称为联系的元。 – 如学生选修课程是二元联系,供应商向工程供应零 件则是三元联系。
一、数据库系统的特点 数据结构化:在描述数据时,不但要描述数据 本身,还要描述数据之间的关系。 数据独立性高:数据与程序独立,数据的存取 由DBMS负责。 数据由DBMS统一管理和控制:DBMS提供安全 控制,完整性检查,并发控制,数据库恢复等。
二、数据模型 模型的作用: 反映现实世界数据特征、DBMS实现的 依据。
相关文档
最新文档