关系数据库的规范化设计论述
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
5.1.1 数据库设计的特点
数据库建设是硬件、软件和干件的结合 数据库设计应该与应用系统设计相结合
数据库建设是硬件、软件和干件的结合
技术与管理的界面称之为“干件” 三分技术,七分管理,十二分基础数据
结构设计与行为设计相结合
结构(数据)设计:设计数据库框架或数据库结构 行为(处理)设计:设计应用程序、事务处理等
表1:BANK的一个实例
Branch_na me
市中支行 市中支行 市中支行 市中支行 市中支行 舜耕支行 舜耕支行 舜耕支行
……
Assets
9000 000 9000 000 9000 000 9000 000 9000 000 400 000 400 000 400 000
……
Account_nu mber A101 A101 A101 A101 A101 A215 A215 A215 ……
数据库辅助工具(CASE工具)
Sybase公司的PowerDesigner:采用基于EntityRelation的数据模型,分别从概念数据模型(Conceptual Data Model)和物理数据模型(Physical Data Model)两 个层次对数据库进行设计。
Oracle公司的Oracle Designer:支持面向对象和实体 关系的建模方式。在一个有效的实体关系模型或面向对 象的类型模型中,数据库设计转换工具可以自动生成第 一个数据库方案,且具有完整的表、列、索引和参照完 整性约束。
数据库辅助工具(CASE工具)
Rational公司的Rational Rose:支持关系型数据库逻 辑模型的生成,包括:Oracle 7、Sybase、SQL Server、 Watcom SQL和ANSI SQL,其结果可用于数据库建模工具 生成逻辑模型和概念模型。
数据库辅助工具(CASE工具)
新旧系统转换、运行、维护(修正性、适应性、 改善性维护)
5.1.2 数据库设计方法
早期数据库设计最后要采用手工与经验相结合的方法 规范设计方法。规范设计法:其本质仍是手工设计方法。
其基本思想是过程迭代和逐步求精。比较著名的有新奥 尔良(New Orleans)方法。它将数据库设计分为四个阶 段;需求分析(分析用户要求)、概念设计(信息分析和 定义)、逻辑设计(设计实现)和物理设计(物理数据库设 计)。 此外,还有基于E-R模型的数据库设计方法、基于 3NF(第三范式)的设计方法、基于抽象语法规范的设计 方法等
运 行 、 性能监测、转储/恢复
维护Leabharlann Baidu
数据库重组和重构
数据流图和判定表(判定树)、数据字典中 处理过程的描述
系统说明书包括: ①新系统要求、 方案和概图 ②反映新系统信息 流的数据流图
系统结构图 (模块结构)
模块设计 IPO表
IPO表…… 输入: 输出: 处理:
程序编码、 编译联结、 测试
Main( ) …… if…… then …… end
5.1.3 数据库设计的基本步骤
需求分析阶段 概念结构设计阶段 逻辑结构设计阶段 数据库物理设计阶段 数据库实施阶段 数据库运行和维护阶段
5.1.4 数据库各级模式的形成过程
根据数据库设计的不同时期,可以形成各级模式。 在需求分析阶段综合不同用户的应用需求; 在概念设计阶段形成独立于机器特点,独立于各个DBMS
关系数据库的规范化设计论述
路漫漫其悠远
少壮不努力,老大徒悲伤
第5章 关系数据库的规范化设计
5.1 数据库设计概述 5.2 数据库表的规范化 5.3 数据库设计的全过程
5.1 数据库设计概述
5.1.1 数据库设计的特点 5.1.2 数据库设计方法 5.1.3 数据库设计的基本步骤 5.1.4 数据库各级模式的形成过程
数据库设计
数据库设计(Database Design)是指对于一个给定的应 用环境,构造最优的数据库模式,建立数据库及其应 用系统,使之能够有效地存储数据,满足各种用户的 应用需求。
数据库设计的目标是为用户和各种应用系统提供一个 高效率的运行环境。效率包括两个方面:一是数据库 的存取效率;二是存储空间的利用率。
设计 阶段
设计描述 数据
处理
需求 分析
逻辑 结构 设计
概念结 构设计
物理 设计 实施 阶段
数据字典、全系统中数据项、 数据流、数据存储的描述
概念模型(E-R图)
数据字典
某种数据模型
关系
非关系
存储安排 方法选择 存取路径建立
编写模式 装入数据 数据库试运行
……
Creat…… Load……
分区1 分区2
产品的概念模式(E-R图); 在逻辑设计阶段将E-R图转换成具体的数据库产品支持
的数据模型,如关系模型,形成数据库逻辑模式;然后 根据需要和安全建立视图,形成用户模式; 在物理设计阶段根据DBMS的特点和处理,建立存储安排、 索引等,形成物理模式。
5.2 数据库表的规范化
5.2.1 问题的提出 5.2.2 规范化理论的基本概念 5.2.3 关系模式的优化
BANK(branch_name,assets,account_number, access_date,balance)
现实世界的已知事实(语义)
银行具有多个支行,每个支行有唯一的名称,具有一 定的资产额。
存款账户通过唯一的账号进行标识,在某个支行开户, 银行记录每个存款账户的开户支行名称以及每次存款 的日期、金额。
CA公司的Erwin:主要用来建立数据库的概念模型和物 理模型。它能用图形化的方式,描述出实体、联系及实 体的属性。ERwin支持IDEF1X方法。通过使用ERwin建模 工具自动生成、更改和分析IDEF1X模型,不仅能得到优 秀的业务功能和数据需求模型,而且可以实现从IDEF1X 模型到数据库物理设计的转变。
5.2.1 问题的提出
建立一个描述银行信息的数据库,该数据库涉及的信 息包括:支行名称branch_name、资产额assets、存款账 号 account_number 、 存 款 时 间 access_date 、 存 款 金 额 balance。
假设用一个单一的关系模式BANK来表示,则该关系模 式为: