
管理信息系统实用教程第2版.ppt
45页第8章 数据库设计管理信息系统实用教程(第2版)王若宾 王恩波 主编.管理信息系统实用教程(第二版)王若宾 wrb@教学及学习建议u给教师–讲解数据库设计的基本思路和方法,特别是要引导学生掌握从业务流程到数据流程转化过程中数据库设计的应用,重点强调数据库范式设计的应用;u给学生–掌握数据库设计的基本方法,基于教材中的实例掌握从E-R图到数据库模型的转化过程,掌握数据库范式设计在数据库设计中的应用管理信息系统实用教程(第二版)王若宾 wrb@本章结构u数据库及数据库管理系统u设计关系数据库u评价模型质量u数据库新技术.管理信息系统实用教程(第二版)王若宾 wrb@数据库及数据库管理系统u数据库(Database)是被集中控制和管理的存储数据的完整集合 u数据库由数据库管理系统(DataBase Management System,DBMS)来管理和控制 .管理信息系统实用教程(第二版)王若宾 wrb@.管理信息系统实用教程(第二版)王若宾 wrb@u在数据库技术的发展过程中有四种模型类型得到了广泛应用:–层次–网状–关系–面向对象.管理信息系统实用教程(第二版)王若宾 wrb@设计关系数据库u设计者还需要明晰以下问题:–什么内容可以放到表中?–如何确定数据库系统中应该有哪些表?–表和表之间是怎样的关系?–表之间的关系如何实现?.管理信息系统实用教程(第二版)王若宾 wrb@u表、主键和实体关系图 –关系数据库管理系统(Relational DataBase Management System, RDBMS)是一个将存储数据组织成表或关系的DBMS。
–关系数据库的表与日常生活中看到的数据统计表相似,即都是包含行和列的二维数据结构–然而,关系数据库管理系统的数据库表其结构是基于关系运算的,在数据库表中单独的一行称为行、元组或记录,单独的一列称为字段或属性–表中的单一单元称为字段值、属性值或数据元素管理信息系统实用教程(第二版)王若宾 wrb@.管理信息系统实用教程(第二版)王若宾 wrb@u什么是主键呢?–主键是一个字段或字段组合,它的值必须是唯一的,换句话说,就是不允许出现重复值 –主键是数据库表设计的决定性因素,因为它们是表示表间关系的基础即主键是联结一个表和其他表的“纽带”管理信息系统实用教程(第二版)王若宾 wrb@u在数据库设计中,描述表以及表之间的关系一般使用实体关系图(Entity-Relationship Diagram,ERD)管理信息系统实用教程(第二版)王若宾 wrb@.管理信息系统实用教程(第二版)王若宾 wrb@u从实体关系图到数据库 –为了设计数据库,先要构造数据库的概念模型,即实体关系图(ERD)表示的实体模型–再对它进行格式化,可以得到数据库的逻辑模型,这个过程把层次模型、网状模型都转化成关系数据模型。
–最后,根据关系数据模型可以设计出数据库的物理模型,即由若干张互相关联的二维表组成的数据库 .管理信息系统实用教程(第二版)王若宾 wrb@u实体间的关系有三种 :–一对一关系 .管理信息系统实用教程(第二版)王若宾 wrb@–一对多关系 .管理信息系统实用教程(第二版)王若宾 wrb@–多对多关系 .管理信息系统实用教程(第二版)王若宾 wrb@u三个实体多对多关系 .管理信息系统实用教程(第二版)王若宾 wrb@u一个工厂生产管理的实体关系图,其中包含了多对多关系,按照前述的方法将这个ERD简化管理信息系统实用教程(第二版)王若宾 wrb@u图中的9个菱形框分别表示这6个实体之间的9个关系,按格式化规则,去掉一对多的关系(有4个),把其余的5个多对多关系改为方框,即得到了11个方框,这就意味着生产管理数据库由l1个数据表(或称为关系)组成 .管理信息系统实用教程(第二版)王若宾 wrb@u从ERD建立一个关系数据库模型,可采取以下步骤:–1.为每个实体建立一张表;–2.为每个表选择一个主键(如果需要可以定义一个);–3.确定外键以表示一对多关系;–4.建立新表来表示多对多关系;–5.定义参照完整性约束;–6.评价模型质量,并进行必要的改进;–7.为每个字段选择适当的数据类型和取值范围(如果需要的话)。
管理信息系统实用教程(第二版)王若宾 wrb@u为实体建立表 .管理信息系统实用教程(第二版)王若宾 wrb@.管理信息系统实用教程(第二版)王若宾 wrb@u建立表间的关系 u每个关系类型的表示规则如下:–一对多关系——增加“一”端实体类型的主键字段到表示“多”端实体类型的表中–多对多关系——建立一个包含一对相关实体类型主键字段的新表管理信息系统实用教程(第二版)王若宾 wrb@.管理信息系统实用教程(第二版)王若宾 wrb@.管理信息系统实用教程(第二版)王若宾 wrb@u执行参照完整性 u参照完整性描述了外键值和主键值之间保持一致的状态 u一旦模型设计者确定了主键和外键,当遇到以下情况时,DBMS会自动执行参照完整性规则:–当建立一个包含外键值的记录时,DBMS确保它在另一个相关表中以主键的形式出现–当删除一个记录时,DBMS确保相关表中没有外键与被删记录的主键有相同值–当改变一个主键值时,DBMS要求相关表中没有外键与它有相同值管理信息系统实用教程(第二版)王若宾 wrb@u设计基于类图的关系数据库模型 u以图书馆管理的类图为例展开这一设计转化过程u由于关系数据库无法表示类的继承关系,为了表示用户及其子类的关系,引入用户类别关系,通过类别确定用户类中不同的子类。
.管理信息系统实用教程(第二版)王若宾 wrb@.管理信息系统实用教程(第二版)王若宾 wrb@u接下来将每个实体类转化为数据库表时需要确定每个表的主键,其中对于书目可以直接使用出版发行的通用书号做主键,其他几个实体类可以指定各自的唯一编码做主键u下一步是建立各表之间的关系,其中书目和图书是一对多关系,通过ISBN关联;用户类别和用户是一对多关系,通过类别编号关联;图书和用户之间是多对多关系,转化为两个一对多关系,通过借书列表实现请注意各表之间主键、外键之间的关联管理信息系统实用教程(第二版)王若宾 wrb@.管理信息系统实用教程(第二版)王若宾 wrb@.管理信息系统实用教程(第二版)王若宾 wrb@评价模型质量u一个高质量的数据模型具有以下特点:–表中每行以及主键都是唯一的–冗余数据较少–容易实现未来数据模型的改变管理信息系统实用教程(第二版)王若宾 wrb@u确保行和主键值的唯一性:–设计者通过考查主键的内容、可能的键值等法来评价主键的唯一性–在这一点上,内部定义的主键由于是系统自动产生的所以相对来说比较容易评价 –对于不是由DBMS指定的自定义主键,必须对它在整个过程的唯一性和有效性进行仔细审查。
–对由非政府指定的自定义主键需要进行更仔细的检查 .管理信息系统实用教程(第二版)王若宾 wrb@u数据库规范化 –所谓规范化是指通过最小化数据冗余来保证数据库模型质量的过程–数据库规范化通常通过范式来实现 管理信息系统实用教程(第二版)王若宾 wrb@u第1范式(1 NF):如果一个表没有重复字段或字段组,那么它是第l范式这是最基本的关系数据库的要求,所有存储在数据库中的数据都是满足第1范式的管理信息系统实用教程(第二版)王若宾 wrb@u第2范式(2NF):如果一个表是第1范式且每个非关键元素均函数相关于整个主键,则称它是第2范式u第3范式(3NF):如果一个表是第2范式且没有非关键字段函数相关于任何其他非关键字段,则称它为第3范式函数相关是指两个字段值之间的一一对应关系用语言描述就是如果对于任意字段B的值有且只有一个字段A的值与之对应,则称A函数相关于B .管理信息系统实用教程(第二版)王若宾 wrb@.管理信息系统实用教程(第二版)王若宾 wrb@u函数相关是一个很难描述和应用的概念判断一个函数相关的最精确的方法是在表中选两个字段并把它们插入前面定义中的A和B .管理信息系统实用教程(第二版)王若宾 wrb@.管理信息系统实用教程(第二版)王若宾 wrb@.管理信息系统实用教程(第二版)王若宾 wrb@u编码管理 –计算机编码是一项标准化工作,也是组织机构的基础工作,应当由专门部门负责。
–对于企业来说,不同的内容可以由各业务部门组织,如产品编码由计划或销售部门,物资编码由供应部门,职工编码由人事部门,财务编码由财务部门等 .管理信息系统实用教程(第二版)王若宾 wrb@数据库新技术u面向对象数据库–对象数据库管理系统(Object DataBase Management System, ODBMS)是面向对象设计和编程范例的直接扩展,是为了存储对象并与面向对象程序设计语言交互而专门设计的–对象数据库模式包括每个需要持久存储的类的定义 .管理信息系统实用教程(第二版)王若宾 wrb@u分布式数据库分布式数据库 –如今网络应用已经广泛渗透到各个行业,很少有组织将全部数据存储在一个数据库中相反,数据通常存储在多个不同数据库中,通常由多个不同的DBMS控制–大多数组织的信息系统的数据库不是一次设计并安装的实际情况是不同大小和功能的信息系统需要几十年的时间进行开发这些系统通常使用不同的工具和支持环境并在组织中不同部门的指导和控制下开发的–结果,一个大型组织的数据常常跨越许多硬件、软件、组织和地域界线而分成片段管理信息系统实用教程(第二版)王若宾 wrb@小结u本章介绍了数据库设计的内容,重点讨论了关系数据库的设计并以课程管理系统为实例展示了关系数据库的设计过程。
对于面向对象数据库和分布式数据库等新技术也做了简要介绍u请通过实验完成数据库设计的练习管理信息系统实用教程(第二版)王若宾 wrb@谢谢.。












