现代数据库管理学习笔记四 增强型E-R模型和业务规则
2011-08-13 21:05
781 查看
EER:增强型实体-联系模型
在EER模型中引入的最重要的概念是超类型/子类型联系。这种方法允许我们先建模一个一般的实体类型(称为超类型),然后,将其细分为几个特殊的实体类型(称为子类型)。
每一个子类型从其超类型中继承所有的属性,并可能加入自己的特殊属性。
实体聚簇:是将实体-联系数据模型的一部分转变成同样数据的更为宏观层次的视图的一种方法。
实体聚簇是一种层次分解基数,它能够使实体-联系图更易读。
超类型和子类型的表示:超类型通过线与一个圆连起来,圆通过连线依次与每一个已定义的子类型连起来,每一个子类型与圆之间的连线上的U状符号表示子类型是超类型的一个子集,也表示了子类型/超类型联系的方向。
属性继承:子类型实体继承超类型所有的属性值,这个重要性质使得子类型没有必要重复包含超类型的属性。
什么时候使用超类型/子类型联系:
1)存在一些属性适用于一些(而不是全部)实体类型的实例
2)子类型的实例参与仅属于该子类型的联系
超类型/子类型联系之间的约束:
1.完备性约束:解决是否一个超类型的实例必须至少是一个子类型的实例
有两个可能的规则:完全特化和部分特化
完全特化规则:说明超类型的每一个实体实例必须是联系中一些子类型的一个实例,由从超类型到圆的双线表示
部分特化规则:由从超类型到圆的单线表示
2.不相交约束:解决一个超类型的实例是否可以同时是两个(或多个)子类型的实例
有两个可能的规则:不想交规则和交叠规则
不相交规则:如果一个(超类型)的实体实例是一个子类型的实例,那么它不能同时是任何其他子类型的实例
交叠规则:一个实体实例可以同时是两个(或多个)子类型的实例
问题:如果插入一个新的超类型实例,那么这个实例将插入哪个子类型中呢?答案是使用子类型鉴别符
子类型鉴别符:是超类型的一个属性,其值决定了目标类型和子类型。分为不相交子类型和交叠子类型。
超类型/子类型层次:超类型和子类型层次的层次安排,其中,每一个子类型只有一个超类型。
超类型/子类型层次中关于属性约束的两个特性:
1)在该层次中,尽可能将属性分配在最高逻辑层
2)在该层次中,较低层的子类型不仅从它的直接超类型中继承属性,而且从层次中较高层中的所有超类型中继承属性
实体聚簇:将一个或多个实体类型及其相关属性组成单个抽象实体类型。
实体聚簇通过下列方法得到:
1)通过抽取超类型及其子类型
2)结合直接相关的实体类型和它们之间的联系
实体聚簇应该关注用户、开发人员和管理人员感兴趣的领域
通用的业务规则框架:
业务的分类:有三种主要的业务规则类型(导出、结构断言和动作断言)
导出:指业务中的其他知识导出的语句。
结构断言:表达组织的静态结构的某些方面的语句。E-R图是说明结构断言的常用方法。结构断言可以用术语或事实来表述。
动作断言:关于组织动作的约束或控制的语句。
更为现代的方法是在概念层声明动作断言,而不是说明如何实现规则。因此,需要描述业务规则的规格说明语言。例如E-R符号,EER符号可以用图形化方法表示业务规则,另外一个是结构化语法(例如英语的某种受限形式)。
业务规则语言规格说明需要具备两种良好特性:
1)应该相对简单,以便最终用户不仅能够理解规则语句,而且能够自己定义规则
2)说明语言应该足够结构化,从而能够自动转换为遵守规范的计算机代码
在EER模型中引入的最重要的概念是超类型/子类型联系。这种方法允许我们先建模一个一般的实体类型(称为超类型),然后,将其细分为几个特殊的实体类型(称为子类型)。
每一个子类型从其超类型中继承所有的属性,并可能加入自己的特殊属性。
实体聚簇:是将实体-联系数据模型的一部分转变成同样数据的更为宏观层次的视图的一种方法。
实体聚簇是一种层次分解基数,它能够使实体-联系图更易读。
超类型和子类型的表示:超类型通过线与一个圆连起来,圆通过连线依次与每一个已定义的子类型连起来,每一个子类型与圆之间的连线上的U状符号表示子类型是超类型的一个子集,也表示了子类型/超类型联系的方向。
属性继承:子类型实体继承超类型所有的属性值,这个重要性质使得子类型没有必要重复包含超类型的属性。
什么时候使用超类型/子类型联系:
1)存在一些属性适用于一些(而不是全部)实体类型的实例
2)子类型的实例参与仅属于该子类型的联系
超类型/子类型联系之间的约束:
1.完备性约束:解决是否一个超类型的实例必须至少是一个子类型的实例
有两个可能的规则:完全特化和部分特化
完全特化规则:说明超类型的每一个实体实例必须是联系中一些子类型的一个实例,由从超类型到圆的双线表示
部分特化规则:由从超类型到圆的单线表示
2.不相交约束:解决一个超类型的实例是否可以同时是两个(或多个)子类型的实例
有两个可能的规则:不想交规则和交叠规则
不相交规则:如果一个(超类型)的实体实例是一个子类型的实例,那么它不能同时是任何其他子类型的实例
交叠规则:一个实体实例可以同时是两个(或多个)子类型的实例
问题:如果插入一个新的超类型实例,那么这个实例将插入哪个子类型中呢?答案是使用子类型鉴别符
子类型鉴别符:是超类型的一个属性,其值决定了目标类型和子类型。分为不相交子类型和交叠子类型。
超类型/子类型层次:超类型和子类型层次的层次安排,其中,每一个子类型只有一个超类型。
超类型/子类型层次中关于属性约束的两个特性:
1)在该层次中,尽可能将属性分配在最高逻辑层
2)在该层次中,较低层的子类型不仅从它的直接超类型中继承属性,而且从层次中较高层中的所有超类型中继承属性
实体聚簇:将一个或多个实体类型及其相关属性组成单个抽象实体类型。
实体聚簇通过下列方法得到:
1)通过抽取超类型及其子类型
2)结合直接相关的实体类型和它们之间的联系
实体聚簇应该关注用户、开发人员和管理人员感兴趣的领域
通用的业务规则框架:
业务的分类:有三种主要的业务规则类型(导出、结构断言和动作断言)
导出:指业务中的其他知识导出的语句。
结构断言:表达组织的静态结构的某些方面的语句。E-R图是说明结构断言的常用方法。结构断言可以用术语或事实来表述。
动作断言:关于组织动作的约束或控制的语句。
更为现代的方法是在概念层声明动作断言,而不是说明如何实现规则。因此,需要描述业务规则的规格说明语言。例如E-R符号,EER符号可以用图形化方法表示业务规则,另外一个是结构化语法(例如英语的某种受限形式)。
业务规则语言规格说明需要具备两种良好特性:
1)应该相对简单,以便最终用户不仅能够理解规则语句,而且能够自己定义规则
2)说明语言应该足够结构化,从而能够自动转换为遵守规范的计算机代码
相关文章推荐
- 现代数据库管理学习笔记之三 组织中的数据建模
- 现代数据库管理学习笔记六 物理数据库设计与性能
- 现代数据库管理学习笔记一 数据库管理语境
- 现代数据库管理学习笔记五 逻辑数据库设计和关系模型
- ThinkPHP学习笔记(五)使用模型操作数据库之CURD
- 【SQL Server学习笔记】数据库的创建、设置、空间管理
- 【数据库学习笔记】Oracle_01_sql*plus,存储结构,用户管理,常用数据类型
- Sharepoint学习笔记—架构系列-- Sharepoint的数据模型(DataModel)、数据管理(Data Management)与查询(Query System)
- [知了堂学习笔记]_EasyUi快速搭建一个权限管理的模块(1)--RBAC概述和数据库设计
- SQL Server 2008 R2学习笔记:业务人员账号与权限管理
- 数据库学习笔记(数据库管理)
- 现代数据库管理(第七版)-笔记
- SQL Server2008 学习笔记(三) 数据库管理
- 现代数据库管理笔记二 数据库开发过程
- DB2 学习笔记 ——数据库管理
- 业务规则管理系统权限控制学习1
- Greenplum+Hadoop学习笔记-14-定义数据库对象之创建与管理模式
- The Definitive Guide To Django 2 学习笔记(九) 第五章 模型 (一)数据库访问
- 业务规则管理系统权限控制学习1
- 三、Oracle数据库之学习笔记---Oracle的表的管理