第四讲 数据模型
第四讲 数据模型
本讲内容 ■什么是数据模型 ■常用的数据模型有哪些 各数据模型之间的比较
本讲内容 ◼ 什么是数据模型 ◼ 常用的数据模型有哪些 ◼ 各数据模型之间的比较
数据模型 数据模型是数据库中用于抽象、表示和处理现 实世界中的数据和信息的工具。需要满足三方 面要求: 是能比较真实地模拟现实世界: 二是容易为人所理解; 三是便于在计算机上实现。 信息世界 机器世界 概念模型 DBMS支持的数据 模型 现实世界 认识抽象
数据模型 ◼ 数据模型是数据库中用于抽象、表示和处理现 实世界中的数据和信息的工具。需要满足三方 面要求: – 一是能比较真实地模拟现实世界; – 二是容易为人所理解; – 三是便于在计算机上实现。 机器世界 DBMS支持的数据 模型 信息世界 概念模型 现实世界 认识抽象
数据模型的组成要求 1、数据结构 是所研究的对象类型的集合。属于系统静态特性 数据操作 是指对数据库中各种对象(型)的实例(值)允许 执行的操作的集合。属于系统动态特性。 3、数据约束条件 是一组完整性规则的集合。完整性规则是给定的数 据模型中数据及其联系所具有的制约和依存规则, 用以限定符合数据模型的数据库状态以及状态的变 化,以保证数据的正确、有效、相容
数据模型的组成要求 ◼ 1、 数据结构 – 是所研究的对象类型的集合。属于系统静态特性。 ◼ 2、 数据操作 – 是指对数据库中各种对象(型)的实例(值)允许 执行的操作的集合。属于系统动态特性。 ◼ 3、 数据约束条件 – 是一组完整性规则的集合。完整性规则是给定的数 据模型中数据及其联系所具有的制约和依存规则, 用以限定符合数据模型的数据库状态以及状态的变 化,以保证数据的正确、有效、相容
概念模型 概念模型实际上是现实世界到机器世界的一个 中间层次 ■基本概念 实体( entity):客观存在,并可相互区别的事物。 属性( attribute:实体的某一特性。 码(key):唯一标识实体的属性集合。 域( domain):属性的取值范围。 实体型( entity type):实体及其属性名集合来抽象和 刻画同类实体。 实体集( entity set):同类实体的集合。 联系( relationship):实体之间、实体内部属性间的 联系。如1:1、1n、mn等
概念模型 ◼ 概念模型实际上是现实世界到机器世界的一个 中间层次。 ◼ 基本概念 实体(entity):客观存在,并可相互区别的事物。 属性(attribute):实体的某一特性。 码(key):唯一标识实体的属性集合。 域(domain):属性的取值范围。 实体型(entity type):实体及其属性名集合来抽象和 刻画同类实体。 实体集(entity set):同类实体的集合。 联系(relationship):实体之间、实体内部属性间的 联系。如1:1、1:n、m:n等
概念模型表示方法 ER图, PPS Chen于1976年提出( entity. relationship approach 实体型:用矩形表示,矩形框内写明实体 属性:用椭圆形表示,并用无向边将其一相 应的实体连接起来 联系:用菱形表示,菱形框人写明联系名 并用无向边分别与有关实体连接起来,同时 在无向边旁标上联系的类型(1:1,1m, mn等)
概念模型表示方法 ◼ E-R图,P.P.S.Chen于1976年提出(entityrelationship approach)。 – 实体型:用矩形表示,矩形框内写明实体 – 属性:用椭圆形表示,并用无向边将其一相 应的实体连接起来 – 联系:用菱形表示,菱形框人写明联系名, 并用无向边分别与有关实体连接起来,同时 在无向边旁标上联系的类型(1:1,1:m, m:n等)
示例1一般的联系 班级 班级 课程 班级-班长 组成 选修 n 班长 生 生 n mn
示例1 一般的联系 班级 班级-班长 班长 1 1 班级 组成 学生 1 n 1:1 课程 选修 学生 m n 1:n m:n
示例2特殊的联系 课程 职工 讲授 经理 教师 参考书 三个实体间的联系 实体内部的联系
示例2 特殊的联系 课程 讲授 教师 1 m 参考书 n 三个实体间的联系 职工 经理 1 n 实体内部的联系
示例3ER图 成绩 课程 选修 班级 讲授 学生 组成 m 教师 参考书 小组长
示例3 E-R图 课程 讲授 教师 1 m 参考书 n 选修 学生 m n 班级 组成 1 n 小组长 1 n 成绩
常用的数据模型 ■层次模型( hierarchical model) ■网状模型( network model ■关系模型( relational model
常用的数据模型 ◼ 层次模型(hierarchical model) ◼ 网状模型(network model) ◼ 关系模型(relational model)