美文网首页数据库知识点程序员
《数据库系统概念》11-扩展的E-R特性

《数据库系统概念》11-扩展的E-R特性

作者: zhixin9001 | 来源:发表于2017-12-11 21:00 被阅读2次

​虽然基本的E-R特性可以应对大部分数据库建模,但为了使用方便,也提供扩展的E-R特性

一、特化Specialization

有时一个实体集会保护若干子集,这些子集各自具有不同的属性。比如person可以包含employee和student子集,这些子集在person本身属性的基础上,附加了特殊的属性,employee会有salary属性,student会有score属性。特化就是在实体集内部分组的过程。

在E-R模型中特化用从特化实体指向被特化实体的空心箭头线表示,叫做ISA联系,既“is a”,比如从employee指向person,也既employee is a person。

有些实体集可以有不同的特化方式,employee可以特化为instructor、secretary,也可以特化为temporary_employee、permanent_employee,这样一个employee可能是一个instructor的同时也是一个permanent_employee,这种一个实体可以属于多个实体集的特化称为重叠特化(overlapping specialization),只能属于一个实体集的特化则称为不相交特化(disjoint specialization)。重叠特化用两个独立的空心箭头,不相交特化使用一个箭头。

二、概化(Generalization)

a)特化是在自顶向下(top-down)的设计过程中,显式地将初始实体分为一系列不同级别子实体的过程。设计过程也可以是自底向上(bottom-up)的,将一系列低级别的实体合成为具有基本属性的顶层实体,这便是概化,高层实体集与一个或多个低层实体集之间为包含关系。高层与低层实体集也可以分别称为超类(superclass)和子类(subclass)。

b)属性继承(Attribute Inheritance)

由特化和概化产生的高层和低层实体的一个重要特性是属性集成,高层实体集的属性被低层实体集继承,所以高层实体集的属性适用于低层实体集,但反之则不成立。

三、概化的约束

a)条件定义的

在条件定义的低层实体集中,根据实体是否满足某个特定的条件来确定成员资格。比如通过student.student_type=granduate/undergranted来区分子实体是本科生还是研究生。

b)用户定义的

用户定义的低层实体集由数据库用户自行决定实体的划分。比如将教师分为几个教学组,employee的划分方式由用户决定。

c)完整性约束(completeness constraint)

全部概化\特化:每个高层实体必须属于一个低层实体集;

部分概化\特化:不是所有高层实体都有属于的低层实体集。

这在数据插入、删除上会带来区别。

学习资料:Database System Concepts, by Abraham Silberschatz, Henry F.Korth, S.Sudarshan

相关文章

  • 《数据库系统概念》11-扩展的E-R特性

    ​虽然基本的E-R特性可以应对大部分数据库建模,但为了使用方便,也提供扩展的E-R特性 一、特化Specializ...

  • 实用数据库设计

    数据库设计的三个阶段 概念设计 将需求分析数据抽象成局部E-R模型,再将局部E-R模型集成为全局E-R模型E-R图...

  • 数据库技术【0072】

    1. 试述数据、数据库、数据库系统、数据库管理系统的概念。 2. 试述事务的概念及事务的4 个特性。 3. 已知三...

  • E-R图相关

    一、E-R图基本概念 E-R图也称实体-联系图(Entity Relationship Diagram),提供了表...

  • 初识MongoDB

    MongoDB简介 基本概念 MongoDB是一个基于分布式文件存储的开源数据库系统。旨在为WEB应用提供可扩展的...

  • 概念模型设计

    概念结构设计- E-R图方法 实体关系图:简记E-R图,是指以实体、关系、属性三个基本概念概括数据的基本结构,从而...

  • 数据库期末考试(考点以及相关概念整理)

    基本概念 数据库系统的特点 数据库(Database):有组织、冗余度小,可共享、数据独立性高、易扩展的数据集合。...

  • 数据库设计-02-建立数据模型

    0 现实世界的数据化 1 概念模型 1.1 基本概念 1.2 E-R 模型 1.2.1基本组成元素 1.2.2 设...

  • 面向对象

    面向对象是软件开发方式。面向对象概念和应用已超越了程序设计和软件开发,扩展到如数据库系统、交互式界面、应有结构、应...

  • Swift--扩展

    扩展的概念 扩展计算属性 扩展方法 扩展构造函数 扩展下标 扩展的概念 在Swift中可以使用一种扩展机制,在原有...

网友评论

    本文标题:《数据库系统概念》11-扩展的E-R特性

    本文链接:https://www.haomeiwen.com/subject/thuwixtx.html