数据库系统的标准结构
数据与模式(数据的结构)
模式(Schema)
- 对数据库中数据所进行的一种结构性的描述
- 所观察到数据的结构信息
如下:
学生登记表(学号 char(8), 姓名 char(10), 性别 Char(2), 出生年月 Datetime, 入学日期 Datetime, 家庭住址 Char(40))
视图(View)/数据(Data)
- 某一种表现形式下表现出来的数据库中的数据
如下:
学号 | 姓名 | 性别 | 出生年月 | 入学日期 | 家庭住址 |
---|---|---|---|---|---|
98110101 | KiyonamiYu | 男 | 196年01月 | 2014年09月 | 浙江省杭州市 |
98110102 | KiyonamiYu | 男 | 196年02月 | 2014年10月 | 浙江省温州市 |
98110103 | KiyonamiYu | 女 | 196年03月 | 2014年11月 | 浙江省绍兴市 |
98110104 | KiyonamiYu | 男 | 196年04月 | 2014年12月 | 湖北省武汉市 |
98110105 | KiyonamiYu | 女 | 196年05月 | 2014年13月 | 浙江省杭州市 |
98110106 | KiyonamiYu | 男 | 196年06月 | 2014年14月 | 浙江省杭州市 |
DBMS管理数据的三个层次(三级模式)
- External Level = User Level(外部模式)
某一用户能够看到与处理的数据, 全局数据中的某一部分
- Conceptual Level = Logic level(概念模式)
从全局角度理解/管理的数据, 含相应的关联约束
- Internal Level = Physical level(内部模式)
存储在介质上的数据,含存储路径、存储方式 、索引方式等
两层映像
- E-C Mapping:External Schema-Conceptual Schema Mapping
- 将外模式映射为概念模式,从而支持实现数据概念视图向外部视图的转换
- 便于用户观察和使用
- C-I Mapping:Conceptual Schema-Internal Schema Mapping
- 将概念模式映射为内模式,从而支持实现数据概念视图向内部视图的转换
- 便于计算机进行存储和处理
为什么要按照标准结构进行数据库系统的抽象?
两个独立性
- 逻辑数据独立性
当概念模式变化时,可以不改变外部模式(只需改变E-C Mapping),从而无需改变应用程序
- 物理数据独立性
当内部模式变化时,可以不改变概念模式(只需改变C-I Mapping) ,从而不改变外部模式
数据模型
模式与数据模型(模式的结构)
数据模型
- 规定模式统一描述方式的模型,包括:数据结构、操作和约束
- 数据模型是对模式本身结构的抽象,模式是对数据本身结构形式的抽象
如下:
关系模型:
所有模式都可为抽象表(Table)的形式数据结构,而每一个具体的 模式都是拥有不同列名的具体的表。对这种表形式的数据有哪些操作和约束
模式1:
学生登记表(学号 Char(8), 姓名 Char(10), 性别 Char(2), 出生年月 Datetime, 入学日期 Datetime, 家庭住址 Char(40))
模式2:
学生成绩单(学号 Char(8), 姓名 Char(10), 班级 Char(6), 课程 Char(40), 学期 Char(4), 成绩 Number)
三大经典数据模型
- 关系模型 : 表的形式组织数据
- 层次模型 : 树的形式组织数据
- 网状模型 : 图的形式组织数据
关系模型的例子
层次模型的例子
网状模型的例子
数据库系统的演变与发展
略