Oracle数据库的三级模式和二级映像,三种范式
2015-09-14 21:21
447 查看
数据库的模式(Schema)是对现实世界的抽象,是对数据的逻辑结构和特征的描述。
A,三级模式:外模式,模式和内模式。
1,与数据库结构的对应
模式 => 概念级:面向建立和维护数据库人员;
外模式 => 用户级:面向用户或应用程序员;
内模式 => 物理级:面向系统程序员;
2,分类
模式:数据库设计者综合所有用户的数据,是对数据库中全部数据的逻辑结构和特征的总体描述。由DDL描述定义;
DDL(CRUD):Create,Drop,Alter,Grant,Revoke,Truncate etc;
外模式:某个或几个用户的数据库视图,是与某一应用有关的数据逻辑的表示,是模式的一个子集。由DML描述定义;
DML(CRUD):Create,Read,Update,Delete;
内模式:描述数据在存储介质上存储方式的物理结构,对应实际存储在外存储介质上的数据库。
B,二级映像:外模式和模式映像,模式和内模式映像
1,作用:DBMS实现三个模式之间的联系和转换;
2,分类
外模式和模式映像:保证数据与程序的逻辑独立性。定义外模式与模式之间的关系。
映像定义在外模式的描述中,模式改变,DBA对相关映像做出改变,以使外模式不变,因为应用程序是依据数据的外模式编写,所以,外模式不变,程序就不需改变;
模式和内模式映像:保证数据与程序的物理独立性。定义数据库全局逻辑结构与存储结构之间的关系。
映像定义在模式的描述中,数据库的存储结束,DBA对相关映像做出改变,以使模式不变。模式不变,与模式没有直接联系的应用程序也不会改变。
C:范式:设计关系型数据库的准则
首先,数据库有比较通用的3种模型: 层次结构模型,网状结构模型,关系结构模型。
第一范式:数据表中的字段都是单一属性的,不可再分。
例:身份证号,电话号码{固机号码,手机号码} => 身份证号,固机号码,手机号码
第二范式:数据库表中不存在非关键字段对任一候选关键字段部分函数依赖。
组合主键(AB)中的A或B与其他字段C不能存在组合重复,即,A和B是主键,那么就不能存在C由A或是B纯粹的决定
第三范式:数据库表中不存在非关键字段对任一候选关键字段的传递函数依赖。
传递函数依赖,如果存在A决定B,B决定C的关系,则C传递函数依赖于A.
A,三级模式:外模式,模式和内模式。
1,与数据库结构的对应
模式 => 概念级:面向建立和维护数据库人员;
外模式 => 用户级:面向用户或应用程序员;
内模式 => 物理级:面向系统程序员;
2,分类
模式:数据库设计者综合所有用户的数据,是对数据库中全部数据的逻辑结构和特征的总体描述。由DDL描述定义;
DDL(CRUD):Create,Drop,Alter,Grant,Revoke,Truncate etc;
外模式:某个或几个用户的数据库视图,是与某一应用有关的数据逻辑的表示,是模式的一个子集。由DML描述定义;
DML(CRUD):Create,Read,Update,Delete;
内模式:描述数据在存储介质上存储方式的物理结构,对应实际存储在外存储介质上的数据库。
B,二级映像:外模式和模式映像,模式和内模式映像
1,作用:DBMS实现三个模式之间的联系和转换;
2,分类
外模式和模式映像:保证数据与程序的逻辑独立性。定义外模式与模式之间的关系。
映像定义在外模式的描述中,模式改变,DBA对相关映像做出改变,以使外模式不变,因为应用程序是依据数据的外模式编写,所以,外模式不变,程序就不需改变;
模式和内模式映像:保证数据与程序的物理独立性。定义数据库全局逻辑结构与存储结构之间的关系。
映像定义在模式的描述中,数据库的存储结束,DBA对相关映像做出改变,以使模式不变。模式不变,与模式没有直接联系的应用程序也不会改变。
C:范式:设计关系型数据库的准则
首先,数据库有比较通用的3种模型: 层次结构模型,网状结构模型,关系结构模型。
第一范式:数据表中的字段都是单一属性的,不可再分。
例:身份证号,电话号码{固机号码,手机号码} => 身份证号,固机号码,手机号码
第二范式:数据库表中不存在非关键字段对任一候选关键字段部分函数依赖。
组合主键(AB)中的A或B与其他字段C不能存在组合重复,即,A和B是主键,那么就不能存在C由A或是B纯粹的决定
第三范式:数据库表中不存在非关键字段对任一候选关键字段的传递函数依赖。
传递函数依赖,如果存在A决定B,B决定C的关系,则C传递函数依赖于A.
相关文章推荐
- Oracle批量授权脚本
- Oracle Goldengate 介绍
- oracle安装成功后,更改字符集
- Oracle系统紧急故障处理(数据文件、日志文件以及表空间损坏的处理)
- Oracle数据库安装成功后,忘记解锁账户和设置密码
- Extract Abends with ERROR OGG-01733 Oracle GoldenGate Capture
- springmvc整合mybatis框架源码 bootstrap html5 mysql oracle
- linux中命令行安装ORACLE
- oracle 11g密码过期但不想更新密码
- oracle驱动问题
- Oracle日期函数months_between的用法
- oracle、sqlserver及mysql数据库版本查看
- oracle REGEXP_SUBSTR函数
- oracle 扩展表空间
- oracle存储过程中数组申明和遍历
- 数据库迁移 oracle 10g -> oracle 11g (windows下)
- 日期常用取值
- Oracle中varchar ,varchar2的区别
- oracle存储过程if-else if-else
- Oracle中间oid注册相关