文档库 最新最全的文档下载
当前位置:文档库 › DB设计02:11个重要的数据库设计规则

DB设计02:11个重要的数据库设计规则

DB设计02:11个重要的数据库设计规则
DB设计02:11个重要的数据库设计规则

11个重要的数据库设计规则

2012-04-12 09:09 坦诚相待 OSCHINA 我要评论(3)字号:T | T

在您开始阅读这篇文章之前,我得明确地告诉您,我并不是一个数据库设计领域的大师。以下列出的 11 点是我对自己在平时项目实践和阅读中学习到的经验总结出来的个人见解。我个人认为它们对我的数据库设计提供了很大的帮助。实属一家之言,欢迎拍砖 : )

AD:2013云计算架构师峰会超低价抢票中

◆简介

在您开始阅读这篇文章之前,我得明确地告诉您,我并不是一个数据库设计领域的大师。以下列出的 11 点是我对自己在平时项目实践和阅读中学习到的经验总结出来的个人见解。我个人认为它们对我的数据库设计提供了很大的帮助。实属一家之言,欢迎拍砖 : )

我之所以写下这篇这么完整的文章是因为,很多开发者一参与到数据库设计,就会很自然地把“三范式”当作银弹一样来使用。他们往往认为遵循这个规范就是数据库设计的唯一标准。由于这种心态,他们往往尽管一路碰壁也会坚持把项目做下去。

如果你对“三范式”不清楚,请点击这里(FQ)一步一步的了解什么是“三范式”。

大家都说标准规范是重要的指导方针并且也这么做着,但是把它当作石头上的一块标记来记着(死记硬背)还是会带来麻烦的。以下 11 点是我在数据库设计时最优先考虑的规则。

◆规则 1:弄清楚将要开发的应用程序是什么性质的(OLTP 还是 OPAP)?

当你要开始设计一个数据库的时候,你应该首先要分析出你为之设计的应用程序是什么类型的,它是“事务处理型”(Transactional)的还是“分析型”(Analytical)的?你会发现许多开发人员采用标准化做法去设计数据库,而不考虑目标程序是什么类型的,这样做出来的程序很快就会陷入性能、客户定制化的问题当中。正如前面所说的,这里有两种应用程序类型,“基于事务处理”和“基于分析”,下面让我们来了解一下这两种类型究竟说的是什么意思。

事务处理型:这种类型的应用程序,你的最终用户更关注数据的增查改删(CRUD,

Creating/Reading/Updating/Deleting)。这种类型更加官方的叫法是“OLTP”。

分析型:这种类型的应用程序,你的最终用户更关注数据分析、报表、趋势预测等等功能。这一类的数据库的“插入”和“更新”操作相对来说是比较少的。它们主要的目的是更加快速地查询、分析数据。这种类型更加官方的叫法是“OLAP”。

那么换句话说,如果你认为插入、更新、删除数据这些操作在你的程序中更为突出的话,那就设计一个规范化的表否则的话就去创建一个扁平的、不规范化的数据库结构。

以下这个简单的图表显示了像左边 Names 和 Address 这样的简单规范化的表,怎么通过应用不规范化结构来创建一个扁平的表结构。

◆规则 2:将你的数据按照逻辑意义分成不同的块,让事情做起来更简单

这个规则其实就是“三范式”中的第一范式。违反这条规则的一个标志就是,你的查询使用了很多字符串解析函数

例如 substring、charindex 等等。若真如此,那就需要应用这条规则了。

比如你看到的下面图片上有一个有学生名字的表,如果你想要查询学生名字中包含“Koirala”,但不包含“Harisingh”的记录,你可以想象一下你将会得到什么样的结果。

所以更好的做法是将这个字段拆分为更深层次的逻辑分块,以便我们的表数据写起来更干净,以及优化查询。

◆规则 3:不要过度使用“规则 2”

开发者都是一群很可爱的生物。如果你告诉他们这是一条解决问题的正路,他们就会一直这么做下去,做到过了头导致了一些不必要的后果。这也可以应用于我们刚刚在前面提到的规则2。当你考虑字段分解时,先暂停一下,并且问问你自己是否真的需要这么做。正如所说的,分解应该是要符合逻辑的。

例如,你可以看到电话号码这个字段,你很少会把电话号码的 ISD 代码单独分开来操作(除非你的应用程序要求这么做)。所以一个很明智的决定就是让它保持原样,否则这会带来更多的问题。

◆规则 4:把重复、不统一的数据当成你最大的敌人来对待

集中那些重复的数据然后重构它们。我个人更加担心的是这些重复数据带来的混乱而不是它们占用了多少磁盘空间。

例如下面这个图表,你可以看到 "5th Standard" 和 "Fifth standard" 是一样的意思,它们是重复数据。现在你可能会说是由于那些录入者录入了这些重复的数据或者是差劲的验证程序没有拦住,让这些重复的数据进入到了你的系统。现在,如果你想导出一份将原本在用户眼里十分困惑的数据显示为不同实体数据的报告,该怎么做呢?

解决方法之一是将这些数据完整地移到另外一个主表,然后通过外键引用过来。在下面这个图表中你可以看到我们是如何创建一个名为“Standards”(课程级别)的主表,然后同样地使用简单的外键连接过去。

◆规则 5:当心被分隔符分割的数据,它们违反了“字段不可再分”

前面的规则 2 即“第一范式”说的是避免“重复组”。下面这个图表作为其中的一个例子解释了“重复组”是什么样子的。如果你仔细的观察 syllabus(课程)这个字段,会发现在这一个字段里实在是填充了太多的数据了。像这些字段就被称为“重复组”了。如果我们又得必须使用这些数据,那么这些查询将会十分复杂并且我也怀疑这些查询会有性能问题。

这些被塞满了分隔符的数据列需要特别注意,并且一个较好的办法是将这些字段移到另外一个表中,使用外键连接过去,同样地以便于更好的管理。

那么,让我们现在就应用规则2(第一范式)“避免重复组”吧。你可以看到上面这个图表,我创建了一个单独的 syllabus(课程)表,然后使用“多对多”关系将它与 subject(科目)表关联起来。

通过这个方法,主表(student 表)的 syllabus(课程)字段就不再有重复数据和分隔符了。

◆规则 6:当心那些仅仅部分依赖主键的列

留心注意那些仅仅部分依赖主键的列。例如上面这个图表,我们可以看到这个表的主键是 Roll

No.+Standard。现在请仔细观察 syllabus 字段,可以看到 syllabus(课程)字段仅仅关联(依赖)Standard(课程级别)字段而不是直接地关联(依赖)某个学生(Roll No. 字段)。

Syllabus(课程)字段关联的是学生正在学习的哪个课程级别(Standard 字段)而不是直接关联到学生本身。那如果明天我们要更新教学大纲(课程)的话还要痛苦地为每个同学也修改一下,这明显是不符合逻辑的(不正常的做法)。更有意义的做法是将这些字段从这个表移到另外一个表,然后将它们与 Standard (课程级别)表关联起来。

你可以看到我们是如何移动 syllabus(课程)字段并且同样地附上 Standard 表。

这条规则只不过是“三范式”里的“第二范式”:“所有字段都必须完整地依赖主键而不是部分依赖”。

◆规则 7:仔细地选择派生列

如果你正在开发一个OLTP型的应用程序,那强制不去使用派生字段会是一个很好的思路,除非有迫切的性能要求,比如经常需要求和、计算的OLAP 程序,为了性能,这些派生字段就有必要存在了。

通过上面的这个图表,你可以看到 Average 字段是如何依赖 Marks 和 Subjects 字段的。这也是冗余的一种形式。因此对于这样的由其他字段得到的字段,需要思考一下它们是否真的有必要存在。

这个规则也被称为“三范式”里的第三条:“不应该有依赖于非主键的列”。我的个人看法是不要盲目地运用这条规则,应该要看实际情况,冗余数据并不总是坏的。如果冗余数据是计算出来的,看看实际情况再来决定是否应用这第三范式。

◆规则 8:如果性能是关键,不要固执地去避免冗余

不要把“避免冗余”当作是一条绝对的规则去遵循。如果对性能有迫切的需求,考虑一下打破常规。常规情况下你需要做多个表的连接操作,而在非常规的情况下这样的多表连接是会大大地降低性能的。

◆规则 9:多维数据是各种不同数据的聚合

OLAP 项目主要是解决多维数据问题。比如你可以看看下面这个图表,你会想拿到每个国家、每个顾客、每段时期的销售额情况。简单的说你正在看的销售额数据包含了三个维度的交叉。

为这种情况做一个实际的设计是一个更好的办法。简单的说,你可以创建一个简单的主要销售表,它包含了销售额字段,通过外键将其他所有不同维度的表连接起来。

◆规则 10:将那些具有“名值表”特点的表统一起来设计

很多次我都遇到过这种“名值表”。“名值表”意味着它有一些键,这些键被其他数据关联着。比如下面这个图表,你可以看到我们有 Currency(货币型)和 Country(国家)这两张表。如果你仔细观察你会发现实际上这些表都只有键和值。

对于这种表,创建一个主要的表,通过一个 Type(类型)字段来区分不同的数据将会更有意义。

◆规则 11:无限分级结构的数据,引用自己的主键作为外键

我们会经常碰到一些无限父子分级结构的数据(树形结构?)。例如考虑一个多级销售方案的情况,一个销售人员之下可以有多个销售人员。注意到都是“销售人员”。也就是说数据本身都是一种。但是层级不同。这时候我们可以引用自己的主键作为外键来表达这种层级关系,从而达成目的。

这篇文章的用意不是叫大家不要遵循范式,而是叫大家不要盲目地遵循范式。根据你的项目性质和需要处理的数据类型来做出正确的选择。

英文原文:11 Important Database designing rules

原文链接:https://www.wendangku.net/doc/769615325.html,/question/267865_48311

数据库设计理论

数据库的设计理论 第一节,关系模式的设计问题 一概念: 1. 关系模型:用二维表来表示实体集,用外键来表示实体间的联系,这样的数据模型,叫做关系数据模型。 关系模型包含内涵和外延两个方面: 外延:就是关系或实例、或当前值。它与时间有关,随时间的变化而变化。(主要是由于元组的插入、删除、修改等操作引起的) 内涵:内涵是与时间独立的,它包括关系属性、以及域的一些定义和说明。还有数据的各种完整性约束。 数据的完整性约束分为静态约束和动态约束。 静态约束包括数据之间的联系(称为数据依赖),主键的设计和各种限制。 动态约束主要定义如插入、删除和修改等操作的影响。 通常我们称内涵为关系模式。 2. 关系模式:是对一个关系的描述,二维表的表头那一行称为关系模式,又称为表的框架或记录类型。 关系模式的定义包括:模式名、属性名、值域名和模式的主键。关系模式仅仅是对数据特征的描述。 关系模式的一般形式为R ( U , D , DOM , F ) R 是关系名。 U 是全部属性的集合。 D 是属性域的集合。 DOM 是U 和D 之间的映射关系,关系运算的安全限制。 F 是属性间的各种约束关系,也称为数据依赖。

关系模式可以表示为: 关系模式(属性名1,属性名2 ,……,属性名n ) 示例:学生(学号,姓名,年龄,性别,籍贯)。 当且仅当U 上的一个关系r 满足 F 时,r 就称为关系模式R(U,F)上的一个关系,R是关系的型,r 是关系的值,每个值称为R 的一个关系。 关系数据库模式: 一个数据库是由多个关系构成的。 一个关系数据库对应多个不同的关系模式,关系数据库模式是一个数据库中所有的关系模式的集合。它规定了数据库的全局逻辑结构。 关系数据库模式可以表示为: S = { Ri < Ui , Di , DOM , Fi > | i = 1,2,…, n } 3. 关系子模式 关系子模式是用户所用到的那部分数据的描述。 外模式是关系子模式的集合。 4. 存储模式 存储模式及内模式。 关系数据库理论的主要内容: (1)数据依赖。数据依赖起着核心的作用。 (2)范式。 (3)模式的设计方法。 如何设计一个合理的数据库模式: (1)与实际问题相结合。 泛关系模式:把现实问题的所有属性组成一个关系模式 泛关系:泛关系模式的实例称为泛关系。 泛关系模式中存在的问题: a 数据冗余 b 更新异常, c 插入异常 d 删除异常。

数据库课程设计完整版

数据库课程设计完 整版

HUNAN CITY UNIVERSITY 数据库系统课程设计 设计题目:宿舍管理信息系统姓名: 学号: 专业:信息与计算科学指导教师:

20年 12月1日 目录 引言3 一、人员分配 4 二、课程设计目的和要求 4 三、课程设计过程 1.需求分析阶段 1.1应用背景 5 1.2需求分析目标5 1.3系统设计概要5 1.4软件处理对象 6 1.5系统可行性分析6 1.6系统设计目标及意义7 1.7系统业务流程及具体功能 7

1.8.1数据流程图8 2.系统的数据字典11 3.概念结构设计阶段 13 4.逻辑结构设计阶段 15 5.物理结构设计阶段 18 6.数据库实施 18 7.数据库的运行和维护 18 7.1 解决问题方法 19 7.2 系统维护 19 7.3 数据库性能评价 19 四、课程设计心得. 20参考文献 20 引言

学生宿舍管理系统对于一个学校来说是必不可少的组成部分。当前好多学校还停留在宿舍管理人员手工记录数据的最初阶段,手工记录对于规模小的学校来说还勉强能够接受,但对于学生信息量比较庞大,需要记录存档的数据比较多的高校来说,人工记录是相当麻烦的。而且当查找某条记录时,由于数据量庞大,还只能靠人工去一条一条的查找,这样不但麻烦还浪费了许多时间,效率也比较低。当今社会是飞速进步的世界,原始的记录方式已经被社会所淘汰了,计算机化管理正是适应时代的产物。信息世界永远不会是一个平静的世界,当一种技术不能满足需求时,就会有新的技术诞生并取代旧技术。21世纪的今天,信息社会占着主流地位,计算机在各行各业中的运用已经得到普及,自动化、信息化的管理越来越广泛应用于各个领域。我们针对如此,设计了一套学生宿舍管理系统。学生宿舍管理系统采用的是计算机化管理,系统做的尽量人性化,使用者会感到操作非常方便,管理人员需要做的就是将数据输入到系统的数据库中去。由于数据库存储容量相当大,而且比较稳定,适合较长时间的保存,也不容易丢失。这无疑是为信息存储量比较大的学校提供了一个方便、快捷的操作方式。本系统具有运行速度快、安全性高、稳定性好的优点,而且具备修改功能,能够快速的查询学校所需的住宿信息。 面对当前学校发展的实际状况,我们经过实地调研之后,对宿舍管理系统的设计开发做了一个详细的概述。

学校专业数据库设计说明书

××××学院 ××专业数据库设计报告 题目:数据库设计说明书

目录 一、需求分析 (2) 二、概念设计 (3) 三、逻辑结构设计................................................................ 4-12 3-1表设计 ...................................................................... 4-7 3-2建表语句................................................................. 7-12 3-3关系图 .. (13) 四、数据导入 ............................................................... 13-14 五、数据库应用 (13) 5-1登陆模块 (14) 5-2排课模块 (14) 5-3选课模块 (14) 5-4信息查询模块 (14) 5-5功能结构图 (14) 六、总结 (15)

一、需求分析 本数据库为教务管理系统,主要是针对学校教学管理方面而设计的。学校教务处因为工作需要,必须对每个班的信息,学生的信息,教师的信息,专业信息有一定的了解,并以此为基础来安排课程。安排课程必须根据学校的软硬件设施来安排,所以要考虑到每门课程的上课时间、地点、人数,避免上课地点的冲突,还要安排特定的老师上课。学期结束后,还要记录学生的分数,以此作为下个学期的教学安排依据。 根据上述的初始条件和对本学校的调研考察,设计一个教务管理的数据库:记录教师和学生的基本信息,选课,课程安排等信息,方便老师,同学等用户对数据库的查询,修改等操作。尽量使数据库高效,存储简单。 以下为所附数据流图:

数据库设计方法及

数据库设计方法及命名规范

- - 2 数据库设计方法、规范与技巧 (5) 一、数据库设计过程 (5) 1. 需求分析阶段 (6) 2. 概念结构设计阶段 (9) 2.1 第零步——初始化工程 (10) 2.2 第一步——定义实体 (10) 2.3 第二步——定义联系 (11) 2.4 第三步——定义码 (11) 2.5 第四步——定义属性 (12) 2.6 第五步——定义其他对象和规则 (12) 3. 逻辑结构设计阶段 (13) 4. 数据库物理设计阶段 (15) 5. 数据库实施阶段 (15) 6. 数据库运行和维护阶段 (16) 7.建模工具的使用 (16) 二、数据库设计技巧 (18) 1. 设计数据库之前(需求分析阶段) (18) 2. 表和字段的设计(数据库逻辑设计) (19) 1) 标准化和规范化 (19) 2) 数据驱动 (20)

- - 3 3) 考虑各种变化 (21) 4) 对地址和电话采用多个字段 (22) 5) 使用角色实体定义属于某类别的列 (22) 6) 选择数字类型和文本类型尽量充足 (23) 7) 增加删除标记字段 (24) 3. 选择键和索引(数据库逻辑设计) (24) 4. 数据完整性设计(数据库逻辑设计) (27) 1) 完整性实现机制: (27) 2) 用约束而非商务规则强制数据完整性 (27) 3) 强制指示完整性 (28) 4) 使用查找控制数据完整性 (28) 5) 采用视图 (28) 5. 其他设计技巧 (29) 1) 避免使用触发器 (29) 2) 使用常用英语(或者其他任何语言)而不 要使用编码 (29) 3) 保存常用信息 (29) 4) 包含版本机制 (30) 5) 编制文档 (30) 6) 测试、测试、反复测试 (31) 7) 检查设计 (31) 三、数据库命名规范 (31) 1. 实体(表)的命名 (31) 2. 属性(列)的命名 (34)

关系数据库逻辑设计(一)

关系数据库逻辑设计(一) (总分:116.98,做题时间:90分钟) 一、选择题(总题数:37,分数:37.00) 1.数据库逻辑设计的依据不包括______。 A) 概念模型 B) 安全性要求 C) 数据约束 D) 功能模型 (分数:1.00) A. B. C. D. √ 解析:[解析] 数据库逻辑设计的依据是数据库概念设计的结果,包括概念数据模型、数据处理要求、数据约束、安全性要求及DBMS的相关信息,因此本题答案为D。 2.以下关于数据库逻辑设计叙述错误的是______。 A) 数据库逻辑设计是面向机器世界的 B) 这个阶段将按照数据库管理系统支持的数据模型来组织和存储数据 C) 目标是得到实际的数据库管理系统可处理的数据库模式,并做到数据结构合理 D) 包括定义和描述数据库的局部逻辑结构、数据之间的关系、数据完整性及安全性要求等 (分数:1.00) A. B. C. D. √ 解析:[解析] 数据库逻辑设计包括定义和描述数据库的全局逻辑结构、数据之间的关系、数据完整性及安全性要求等。因此本题答案为D。 3.在关系数据库设计中,设计关系模式是数据库设计中哪个阶段的任务______。 A) 逻辑设计阶段 B) 概念设计阶段 C) 物理设计阶段 D) 需求分析阶段 (分数:1.00) A. √ B. C. D. 解析:[解析] 关系数据模型是常用的逻辑数据模型,所以设计关系模式是数据库设计中逻辑设计阶段的任务,因此本题答案为A。 4.对于关系的主码必须满足的条件,有下列说法: Ⅰ.一个关系中的主码属性或属性组能函数决定该关系中的所有其他属性 Ⅱ.一个关系中的主码属性不能与其他关系中的主码属性重名 Ⅲ.在一个关系中,一个主码属性的任一真子集都不能函数决定其他属性

数据库课程设计完整版

HUNAN CITY UNIVERSITY 数据库系统课程设计设计题目:宿舍管理信息系统 姓名: 学号: 专业:信息与计算科学 指导教师: 20年 12月1日 目录 引言 3 一、人员分配 4 二、课程设计目的和要求 4 三、课程设计过程 1.需求分析阶段 1.1应用背景 5 1.2需求分析目标5 1.3系统设计概要 5 1.4软件处理对象 6 1.5系统可行性分析 6 1.6系统设计目标及意义7

1.7系统业务流程及具体功能 7 8 2.系统的数据字典11 3.概念结构设计阶段 13 4.逻辑结构设计阶段 15 5.物理结构设计阶段 18 6.数据库实施 18 7.数据库的运行和维护 18 7.1 解决问题方法 19 7.2 系统维护 19 7.3 数据库性能评价 19 四、课程设计心得. 20 参考文献 20 引言 学生宿舍管理系统对于一个学校来说是必不可少的组成部分。目前好多学校还停留在宿舍管理人员手工记录数据的最初阶段,手工记录对于规模小的学校来说还勉强可以接受,但对于学生信息量比较庞大,需要记录存档的数据比较多的高校来说,人工记录是相当麻烦的。而且当查找某条记录时,由于数据量庞大,还只能靠人工去一条一条的查找,这样不但麻烦还浪费了许多时间,效率也比较低。当今社会是飞速进步的世界,原始的记录方式已经被社会所淘汰了,计算机化管理正是适应时代的产物。信息世界永远不会是一个平静的世界,当一种技术不能满足需求时,就会有新的技术诞生并取代旧技术。21世纪的今天,信息社会占着主流地位,计算机在各行各业中的运用已经得到普及,自动化、信息化的管理越来越广泛应用于各个领域。我们针对如此,设计了一套学生宿舍管理系统。学生宿舍管理系统采用的是计算机化管理,系统做的尽量人性化,使用者会感到操作非常方便,管理人员需要做的就是将数据输入到系统的数据库中去。由于数据库存储容量相当大,而且比较稳定,适合较长时间的保存,也不容易丢失。这无疑是为信息存储量比较大的学校提供了

项目数据库设计说明书

项目全称 数据库设计说明书 承建方全称 文件ISO版本控制 目录 ?简介.......................................................................................................................... 1.1.目的.................................................................................................................. 1.2.范围.................................................................................................................. 1.3.定义、首字母缩写词和缩略语...................................................................... 1.4.参考资料.......................................................................................................... ?数据库环境..............................................................................................................

关系数据库设计

目录 一 Codd的RDBMS12法则——RDBMS的起源 二关系型数据库设计阶段 三设计原则 四命名规则 数据库设计,一个软件项目成功的基石。很多从业人员都认为,数据库设计其实不那么重要。现实中的情景也相当雷同,开发人员的数量是数据库设计人员的数倍。多数人使用数据库中的一部分,所以也会把数据库设计想的如此简单。其实不然,数据库设计也是门学问。 从笔者的经历看来,笔者更赞成在项目早期由开发者进行数据库设计(后期调优需要DBA)。根据笔者的项目经验,一个精通OOP和ORM的开发者,设计的数据库往往更为合理,更能适应需求的变化,如果追其原因,笔者个人猜测是因为数据库的规范化,与OO的部分思想雷同(如内聚)。而DBA,设计的数据库的优势是能将DBMS的能力发挥到极致,能够使用SQL和DBMS实现很多程序实现的逻辑,与开发者相比,DBA优化过的数据库更为高效和稳定。如标题所示,本文旨在分享一名开发者的数据库设计经验,并不涉及复杂的SQL语句或DBMS使用,因此也不会局限到某种DBMS产品上。真切地希望这篇文章对开发者能有所帮助,也希望读者能帮助笔者查漏补缺。 一?Codd的RDBMS12法则——RDBMS的起源 Edgar Frank Codd(埃德加·弗兰克·科德)被誉为“关系数据库之父”,并因为在数据库管理系统的理论和实践方面的杰出贡献于1981年获图灵奖。在1985年,Codd 博士发布了12条规则,这些规则简明的定义出一个关系型数据库的理念,它们被作为所有关系数据库系统的设计指导性方针。 1.信息法则?关系数据库中的所有信息都用唯一的一种方式表示——表中的值。 2.保证访问法则?依靠表名、主键值和列名的组合,保证能访问每个数据项。 3.空值的系统化处理?支持空值(NULL),以系统化的方式处理空值,空值不依赖于数据类型。 4.基于关系模型的动态联机目录?数据库的描述应该是自描述的,在逻辑级别上和普通数据采用同样 的表示方式,即数据库必须含有描述该数据库结构的系统表或者数据库描述信息应该包含在用 户可以访问的表中。 5.统一的数据子语言法则?一个关系数据库系统可以支持几种语言和多种终端使用方式,但必须至少 有一种语言,它的语句能够一某种定义良好的语法表示为字符串,并能全面地支持以下所有规 则:数据定义、视图定义、数据操作、约束、授权以及事务。(这种语言就是SQL) 6.视图更新法则?所有理论上可以更新的视图也可以由系统更新。 7.高级的插入、更新和删除操作?把一个基础关系或派生关系作为单个操作对象处理的能力不仅适应 于数据的检索,还适用于数据的插入、修改个删除,即在插入、修改和删除操作中数据行被视 作集合。 8.数据的物理独立性?不管数据库的数据在存储表示或访问方式上怎么变化,应用程序和终端活动都 保持着逻辑上的不变性。 9.数据的逻辑独立性?当对表做了理论上不会损害信息的改变时,应用程序和终端活动都会保持逻辑 上的不变性。 10.数据完整性的独立性?专用于某个关系型数据库的完整性约束必须可以用关系数据库子语言定 义,而且可以存储在数据目录中,而非程序中。

数据库设计说明书-完整版

数据库设计说明书-完整版

目录 第一章引言 (1) 1.1编写目的 1 1.2背景 1 1.3参考资料 2 第二章外部设计 (3) 2.1标识符和状态 3 2.2命名约定 3 2.3设计约定 3 第三章结构设计 (4) 3.1概念结构设计 4 3.1.1实体和属性的定义 4 3.1.2设计局部ER模式

13 3.1.3设计全局ER模式 20 3.2逻辑结构设计 21 3.2.1模式 21 3.2.2外模式 32 3.3物理结构设计 32 第四章运用设计 (34) 4.1数据字典设计 34 4.2安全保密设计 34 4.3数据库实施 34 4.3.1创建数据库 34 4.3.2创建表 34

第一章引言 1.1编写目的 1、本数据库设计说明书是关于寝室管理系统数据库设计,主要包括数据逻辑结构设计、数据字典以及运行环境、安全设计等。 2、本数据库设计说明书读者:用户、系统设计人员、系统测试人员、系统维护 人员。 3、本数据库设计说明书是根据系统需求分析设计所编写的。 4、本系统说明书为开发软件提供了一定基础。 1.2背景 随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已经进入人类社会的各个领域并发挥着越来越重要的作用,然而在计算机应用普及以前我国大部分高校的学生信息管理仅靠人工进行管理和操作,这种管理方式存在着许多缺点,如:效率低,密保性差,另外时间一长,将产生大量的文件和数据,其中有些是冗余或者针对同一目的的数据不相吻合,这对于查找、更新和维护文件等管理工作带来了不少困难,同时也跟不上信息时代高速、快捷的要求,严重影响了消息的传播速度。然而现今学校的规模不断扩大,学生数量急剧增加,有关学生的各种信息也成倍增长,人工管理信息的缺点日渐突出,面对庞大的学生信息量,如何利用现代信息技术使其拥有快捷、高效的适应能力已成为当务之急。正因为如此,学生宿舍管理系统成为了学生管理不可缺少的部分,它的内容对于学校的管理者来说都至关重要,所以学生宿舍管理系统应该能

数据库课程设计

图书馆管理系统的设计 1、需 求 分 析 图书馆,是搜集、整理、收藏图书资料以供人阅览、参考的机构。借阅读者可分为教师和学生。不同的借阅者最多可借书的数量和期限不同,如教师最多可借两本,期限为三个月,学生最多可借一本,期限为一个月,无论是教师还是学生,借阅超期都要进行罚款处理;每次借阅都要有相应的记录,以上就是图书馆管理系统所要完成的主要功能。 2、概 念 结 构 设 计 客观存在并可以相互区别的事物称为实体,本系统涉及到的实体只有读者和图书,二者之间存在借阅和罚款的联系,据此可以画出该系统的E-R 图,如图2.1所示。 图2.1 图书馆管理系统的E-R 图 其中读者与其属性关系如图2.2所示,图书与其属性关系如图2.3所示。 图2.2 读者实体与其属性 借出日期 归还日期 罚款金额 超期天数 处罚日期 借阅 罚款 读者 图书 性别 读者姓名 借书证号 读者类别 是否超期 读者

图2.3 图书实体与其属性 3、逻 辑 结 构 设 计 根据E-R 图向关系模式的转换规则可得如下的关系模式,加下划线的属性为相应关系的主键。 读者(借书证号,读者姓名,性别,读者类别,是否超期)。 图书(条形码号,图书编号,书名,作者,出版社,出版日期,类别,借阅状态,借阅次数),其中属性“借阅状态”给出是否在库的信息,分为“在馆”和“借出”两种状态。 借阅(借书证号,条形码号,借出日期,归还日期,罚款状态),主码为三个属性的组合,因为同一个读者可能重复借同一本书,只有加上借出日期才能区分出不同的借阅记录。 这里的日期精确到秒,此外,为了在进行超期罚款处理时能够区分出是否已经进行了罚款,这里还加了一个罚款状态的字段。 罚款(借书证号,条形码号,处罚日期,超期天数,罚款金额),主码为三个属性的组合,理由同上。 另外,为了保证系统的安全性,采用了登陆的措施,用户名和密码存放在密码表中。 密码表(用户名,密码)。 4、规 范 化 分 析 一个关系模式是好是坏,需要一个标准来衡量,这个标准就是模式的范式。用规范化理论对上述关系模式进行分析,除“罚款”关系外,其他四个关系模式中,主码是本模式的唯一决定因素,所以这四个关系模式都属于BCNF ,在函数依赖范畴内,规范化程度已经达到了最高。但是在“罚款”关系中,罚款金额=超期天数×日罚款额,所以超期天数→罚款金额。又因为处罚日期与归还日期为同一天,故(借书证号,条形码号,处罚日期)→超期天数,所以(借书证号,条形码号,处罚日期)→罚款金额,存在传递函数依赖,所以“罚款”关系属于2NF ,存在冗余现象。但根据实际情况,读者往往既关心超期天数,又关心罚款金额,所以“罚款金额”是必要的冗余。 5、用 SQL2014 建 立 数 据 库 1、读者表的建立 条形码号 图书编号 出版日期 书名 作者 出版社 借阅状态 借阅次数 类别 图书

数据库设计说明书.doc

四川省山桐子能源科技有限责任公司 数 据库设计说明书 2013-5-20 第六小组成员 数据库设计说明书 1 引言 1.1 目的 为了有效指导山桐子能源网站系统数据库的设计,特设计此概要设计说明该网站数据库所含有的各数据表及其机构,以作为系统开发实现的依据,本说明书主要阅读对象为业主方、承建方、监理方相关技术人员和项目责任人。 1.2 背景 说明: a.数据库名称shantz 开发软件sql2005 b.任务提出者:山桐子科技能源有限责任公司 c.目负责人:张林鹏 d.者:赵霞、杨露、陈齐瑜、冯明华、张林鹏、胡芸儿 本系统将使用sql server 2005作为数据库存储系统,sql server 2000企业版将由山桐子公司自行购买。 1.3 定义 该文档也需要将本文档中所涉及的所有术语、缩略语进行详细的定义。还有一种可简明的做法,就是维护在一个项目词汇表中,这样就可以避免在每个文档中都重复很多内容。 id编号,u_name 名称,u_pwd 密码, u_realname 确认密码,u_papert 证件,u_address 家庭住址,u_phone 电话号码,u_news 新闻, 1.4 参考资料 a.山桐子网站设计项目分析会议记录。 b.《桐子网站需求分析说明书》 c.国家标准《数据库设计说明书(gb8567----88)》 2 外部设计 2.1 标识符和状态 要求:详细说明用于唯一地标识该数据库的代码、名称或标识符,附加的描述性信息亦要给出。若该数据库属于尚在实验中、尚在测试中或是暂时使用的,则要说明这一特点及其有效时间范围。 1)数据库标示符:shuantongzi 用户名:admin 密码:123 权限:全部有效时间:开发阶段 说明:系统正式发布后,可能更改数据库用户/密码,请在统一位置编写数据库连接字符串,在发行前请予以改正。 2) 数据库标示符:hyzc 用户名:user 密码:456 权限:会员有效时间:开发阶段 说明:系统正式发布后,可能更改数据库用户/密码,请在统一位置编写数据库连接字符串,在发行前请予以改正。 2.2 使用它的程序 dreamweaver8、https://www.wendangku.net/doc/769615325.html,、sql 2005、ps、 2.3 约定 (1) 字符集采用 utf-8,请注意字符的转换。 (2) 所有数据表第一个字段都是系统内部使用主键列,自增字段,不可空,名称为:id,确保不把此字段暴露给最终用户。 (3) 除特别说明外,所有字符串字段都采用varchar(50) 类型,(无论汉字还是英文,都算一个字符)。 (4) 除特别说明外,所有小数的字段都采用 decimal(13,3) 的形式表达。 (5) 除特别说明外,所有日期格式都采用 date 格式,无时间值。 (6) 除特别说明外,所有整形都采用int 格式。 (7) 除特别说明外,所有字段默认都设置为 null 。 2.4 支持软件

数据库设计的基本步骤

数据库设计的基本步骤 一、数据库设计的生存期 按照规范设计的方法,考虑到数据库及其应用系统开发的全过程,将数据库 设计分为六个阶段。如下图。 ① 需求分析 需求收集和分析, 需求。 ② 概念结构设计 对需求进行综合、归纳与抽象,形成一个独立于具体 DBMS 的概念模型(用 E-R 图表示)。 ③ 逻辑结构设计 将概念结构转换为某个DBMS 所支持的数据模型(例如关系模型),并对其 进行优化。 ④ 物理结构设计 为逻辑数据模型选取一个最适合应用环境的物理结构 (包括存储结构和存取 方法)。 ⑤ 数据库实施 需求A 祈断段 T 1 概念设计阶段 i 逻辑 q 丰计阶段 1 物理. 1 殳计阶段 j 数据E L 支实施阶段 数据库运荷? 维护阶段 得到用数据字典描述的数据需求,用数据流图描述的处理

运用DBMS 提供的数据语言(例如 SQL )及其宿主语言(例如C),根据逻辑设计和物理设计的结果建立数据库,编制与调试应用程序,组织数据入库,并进行试运行。 ⑥数据库运行和维护 数据库应用系统经过试运行后即可投入正式运行。在数据库系统运行过程中必须不断地对其进行评价、调整与修改。 说明:设计一个完善的数据库应用系统是不可能一蹴而就的,它往往是上述 六个阶段的不断反复。 二、数据库设计阶段的内容 设计步骤既是数据库设计的过程,也包括了数据库应用系统的设计过程。下面针对各阶段的设计内容给出各阶段的设计描述。如下图。 阶段 濮块结构) 三、数据库设计阶段的模式 数据库结构设计的不同阶段形成数据库的各级模式,如下图 需求数据字睦、全系统中数据项、 分析數据證、数据存储的描述 数1E流图和判定我(利宦 闕)、数据字典中处理过程的 描述 设计 概念模型〔E?兄图) 模块设计 IPO表 编写模武装入 数JE 实施数揭库试 运行阶段 Create … L o豆恋■?. 程序编码 编译联结 测试 Tlain () * ■ A if???then ■■ i HUl 数据宇典 系窥说朋书包括: ①新系统要求、 方案和概图 ②反映新系统信息 流的数据流图 方法选择物理 存取路径建立设计

ISO软件工程数据库设计说明书

ISO软件工程模板(7)数据库设计说明书 1.引言 1.1编写目的 [说明编写这份数据设计说明书的目的,指出预期的读者。] 1.2背景 a.[待开发数据库的名称和使用此数据库的软件系统的名称;] b.[列出本项目的任务提出者、开发者、用户。] 1.3定义 [列出本文件中用到的专门术语的定义和外文首字母组词的原词组。] 1.4参考资料 [列出有关的参考资料。] 2.外部设计 2.1标识符的状态 [联系用途,详细说明用于唯一地标识该数据库的代码、名称或标识符,附加的描述性信息亦要给出。如果该数据库属于尚在实验中、尚在测试中或是暂时使用的,则要说明这一特点及其有效时间范围。] 2.2使用它的程序 [列出将要使用或访问此数据库的所有应用程序,对于这些应用程序的每一个,给出它的名称和版本号。] 2.3约定

[陈述一个程序员或一个系统分析员为了能使用此数据库而需要了解的建立标号、标识的约定。] 2.4专门指导 [向准备从事此数据库的生成、从事此数据库的测试、维护人员提供专门的指导。] 2.5支持软件 [简单介绍同此数据库直接有关的支持软件。说明这些软件的名称、版本号的主要功能特性。列出这些支持软件的技术文件的标题、编号及来源] 3.结构设计 3.1概念结构设计 [说明本数据库将反映的现实世界中的实体、属性和它们之间的关系等的原始数据形式,包括各数据项、记录、系、文卷的标识符、定义、类型、度量单位和值域,建立本数据库的每一幅用户视图。] 3.2逻辑结构设计 [说明把上述原始数据进行分解、合并后重新组织起来的数据库全局逻辑结构。] 3物理结构设计 [建立系统程序员视图。] 4.运用设计 4.1数据字典设计 [对数据库设计中涉及到的各种项目一般要建立起数据字典,以说明它们的标识符、同义名及有关信息。] 4.2安全保密设计 [说明在数据库的设计中,将如何通过区分不同的访问者、不同的访问类型和不同的数据对象,进行分别对待而获得的数据库安全保密的设计考虑。]

数据库课程设计(完整版)

HUNAN CITY UNIVERSITY 数据库系统课程设计 设计题目:宿舍管理信息系统 姓名: 学号: 专业:信息与计算科学 指导教师: 20年 12月1日

目录 引言 3 一、人员分配 4 二、课程设计目的和要求 4 三、课程设计过程 1.需求分析阶段 1.1应用背景 5 1.2需求分析目标5 1.3系统设计概要 5 1.4软件处理对象 6 1.5系统可行性分析 6 1.6系统设计目标及意义7 1.7系统业务流程及具体功能 7 1.8.1数据流程图8 2.系统的数据字典11 3.概念结构设计阶段 13 4.逻辑结构设计阶段 15 5.物理结构设计阶段 18 6.数据库实施 18 7.数据库的运行和维护 18 7.1 解决问题方法 19 7.2 系统维护 19 7.3 数据库性能评价 19 四、课程设计心得. 20参考文献 20

引言 学生宿舍管理系统对于一个学校来说是必不可少的组成部分。目前好多学校还停留在宿舍管理人员手工记录数据的最初阶段,手工记录对于规模小的学校来说还勉强可以接受,但对于学生信息量比较庞大,需要记录存档的数据比较多的高校来说,人工记录是相当麻烦的。而且当查找某条记录时,由于数据量庞大,还只能靠人工去一条一条的查找,这样不但麻烦还浪费了许多时间,效率也比较低。当今社会是飞速进步的世界,原始的记录方式已经被社会所淘汰了,计算机化管理正是适应时代的产物。信息世界永远不会是一个平静的世界,当一种技术不能满足需求时,就会有新的技术诞生并取代旧技术。21世纪的今天,信息社会占着主流地位,计算机在各行各业中的运用已经得到普及,自动化、信息化的管理越来越广泛应用于各个领域。我们针对如此,设计了一套学生宿舍管理系统。学生宿舍管理系统采用的是计算机化管理,系统做的尽量人性化,使用者会感到操作非常方便,管理人员需要做的就是将数据输入到系统的数据库中去。由于数据库存储容量相当大,而且比较稳定,适合较长时间的保存,也不容易丢失。这无疑是为信息存储量比较大的学校提供了一个方便、快捷的操作方式。本系统具有运行速度快、安全性高、稳定性好的优点,并且具备修改功能,能够快速的查询学校所需的住宿信息。 面对目前学校发展的实际状况,我们通过实地调研之后,对宿舍管理系统的设计开发做了一个详细的概述。

数据库设计说明书_完整版

目录 第一章引言 (1) 1.1编写目的 (1) 1.2背景 (1) 1.3参考资料 (2) 第二章外部设计 (3) 2.1标识符和状态 (3) 2.2命名约定 (3) 2.3设计约定 (3) 第三章结构设计 (4) 3.1概念结构设计 (4) 3.1.1实体和属性的定义 (4) 3.1.2设计局部ER模式 (13) 3.1.3设计全局ER模式 (20) 3.2逻辑结构设计 (21) 3.2.1模式 (21) 3.2.2外模式 (32) 3.3物理结构设计 (32) 第四章运用设计 (34) 4.1数据字典设计 (34) 4.2安全保密设计 (34) 4.3数据库实施 (34) 4.3.1创建数据库 (34) 4.3.2创建表 (34)

第一章引言 1.1编写目的 1、本数据库设计说明书是关于寝室管理系统数据库设计,主要包括数据逻辑结构设计、数据字典以及运行环境、安全设计等。 2、本数据库设计说明书读者:用户、系统设计人员、系统测试人员、系统维护人员。 3、本数据库设计说明书是根据系统需求分析设计所编写的。 4、本系统说明书为开发软件提供了一定基础。 1.2背景 随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已经进入人类社会的各个领域并发挥着越来越重要的作用,然而在计算机应用普及以前我国大部分高校的学生信息管理仅靠人工进行管理和操作,这种管理方式存在着许多缺点,如:效率低,密保性差,另外时间一长,将产生大量的文件和数据,其中有些是冗余或者针对同一目的的数据不相吻合,这对于查找、更新和维护文件等管理工作带来了不少困难,同时也跟不上信息时代高速、快捷的要求,严重影响了消息的传播速度。然而现今学校的规模不断扩大,学生数量急剧增加,有关学生的各种信息也成倍增长,人工管理信息的缺点日渐突出,面对庞大的学生信息量,如何利用现代信息技术使其拥有快捷、高效的适应能力已成为当务之急。正因为如此,学生宿舍管理系统成为了学生管理不可缺少的部分,它的内容对于学校的管理者来说都至关重要,所以学生宿舍管理系统应该能

数据库设计方法、规范与技巧

数据库设计方法、规范与技巧 一、数据库设计过程 数据库技术是信息资源管理最有效的手段。数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,有效存储数据,满足用户信息要求和处理要求。 数据库设计中需求分析阶段综合各个用户的应用需求(现实世界的需求),在概念设计阶段形成独立于机器特点、独立于各个DBMS产品的概念模式(信息世界模型),用E-R图来描述。在逻辑设计阶段将E-R图转换成具体的数据库产品支持的数据模型如关系模型,形成数据库逻辑模式。然后根据用户处理的要求,安全性的考虑,在基本表的基础上再建立必要的视图(VIEW)形成数据的外模式。在物理设计阶段根据DBMS特点和处理的需要,进行物理存储安排,设计索引,形成数据库内模式。 1. 需求分析阶段 需求收集和分析,结果得到数据字典描述的数据需求(和数据流图描述的处理需求)。 需求分析的重点是调查、收集与分析用户在数据管理中的信息要求、处理要求、安全性与完整性要求。 需求分析的方法:调查组织机构情况、调查各部门的业务活动情况、协助用户明确对新系统的各种要求、确定新系统的边界。 常用的调查方法有:跟班作业、开调查会、请专人介绍、询问、设计调查表请用户填写、查阅记录。 分析和表达用户需求的方法主要包括自顶向下和自底向上两类方法。自顶向下的结构化分析方法(Structured Analysis,简称SA方法)从最上层的系统组织机构入手,采用逐层分解的方式分析系统,并把每一层用数据流图和数据字典描述。 数据流图表达了数据和处理过程的关系。系统中的数据则借助数据字典(Data Dictionary,简称DD)来描述。 数据字典是各类数据描述的集合,它是关于数据库中数据的描述,即元数据,而不是数据本身。数据字典通常包括数据项、数据结构、数据流、数据存储和处理过程五个部分(至少应该包含每个字段的数据类型和在每个表内的主外键)。 数据项描述={数据项名,数据项含义说明,别名,数据类型,长度, 取值范围,取值含义,与其他数据项的逻辑关系} 数据结构描述={数据结构名,含义说明,组成:{数据项或数据结构}} 数据流描述={数据流名,说明,数据流来源,数据流去向, 组成:{数据结构},平均流量,高峰期流量} 数据存储描述={数据存储名,说明,编号,流入的数据流,流出的数据流, 组成:{数据结构},数据量,存取方式} 处理过程描述={处理过程名,说明,输入:{数据流},输出:{数据流}, 处理:{简要说明}} 2. 概念结构设计阶段 通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型,可以用E-R图表示。概念模型用于信息世界的建模。概念模型不依赖于某一个DBMS支持的数据模型。概念模型可以转换为计算机上某一DBMS支持的特定数据模型。 概念模型特点: (1) 具有较强的语义表达能力,能够方便、直接地表达应用中的各种语义知识。 (2) 应该简单、清晰、易于用户理解,是用户与数据库设计人员之间进行交流的语言。 概念模型设计的一种常用方法为IDEF1X方法,它就是把实体-联系方法应用到语义数据模型中的一种语义模型化技术,用于建立系统信息模型。 使用IDEF1X方法创建E-R模型的步骤如下所示: 2.1 第零步——初始化工程

数据库课程设计

课程设计 题目人力资源数据库设计学院计算机科学与技术 专业计算机科学与技术 班级 姓名 指导教师 2009 年12 月18 日

课程设计任务书 学生姓名:专业班级: 指导教师:工作单位:计算机学院 题目:人力资源数据库设计 初始条件: 人力资源部门希望建立一个数据库来管理它的员工。一个公司有几个部门,而一个员工属于一个部门。这个部门指派一个经理来全面负责部门事务和部门员工。当一个新员工进入公司时,需要他以前的工作经历和成绩。 公司设置了一系列职位,每个职位都有相关的等级和工资。各个职位都会被分配给工作人员。 要求完成的主要任务: 1.根据上述的初始条件,进行调查分析并设计适当的属性。设计一个人力资源 数据库,DBMS可选Ms SQL Server、Access、VFP等。 2.完成课程设计说明书,其格式遵守学校今年的新规定。主要内容包括:需求 分析,概念设计,逻辑设计,物理实现等。 3.基于该数据库,最好实现一个或多个应用程序(自己确定功能),程序设计 语言(工具)任选。这一项是选作,不作硬性要求。 时间安排: 本学期第20周: 1.消化资料、系统调查1天 2.系统分析1天 3.总体设计,实施计划2天 4.撰写报告1天 指导教师签名:年月日 系主任(或责任教师)签名:年月日

人力资源数据库设计 1.概述 人力资源部门希望建立数据库来管理员工。由人力资源部门来指派各部门的经理,而该部门的员工是由经理来负责的,员工进入公司的时候不仅需要员工的基本信息,还需要员工以前的工作经历和相应的成绩。每个员工只属于一个部门。本系统要便于人力资源部门对各部门经理的任命,以及经理对本部门员工的调控。而且要注意员工隐私信息的保护。 2.需求分析说明 本系统主要是开发一个人力资源管理的关系数据库。主要针对人力资源部门,部门经理,以及普通员工三种用户。需要对这三种用户进行详细的需求分析。以及对不同的用户,要设置不同的权限,避免普通员工可以查看其他员工的隐私信息,或者部门经理管理其他部门的员工。同时界面要有好,方便各种用户操作。本数据库是人力资源管理系统,因此主要是围绕管理人员的需求来制作,同时也提供给普通员工查询操作。我将使用人员主要分为三大类:人力资源管理部门、部门经理、普通员工。 实现方法:根据初始条件分析,明确所要设计的数据库在逻辑和物理上的架构,能有一个明确细致的需求分析文档,在其中体现分析所得到的开发和管理需求。在需求分析的基础上,从中抽取出原始数据集的实体,然后,对实体进行概念分层和概念抽象,进行概念模型的设计。在概念模型的基础上,运用E-R 方法,设计出整个系统的模式和子模式,并通过逻辑设计以及物理设计最终确定系统的数据库逻辑架构与物理布局。在数据库的机构基础上,进行数据集的行为设计,并在此基础上,设计应用程序的布局、流程、以及视图集成,并将最终的应用程序投入实施。 3.概念结构设计 人力资源的管理主要反映在对员工信息的录入和删除。本数据库主要涉及的实体有:部门,员工,职位,工作经历,工作成绩。

数据库设计说明书-模版

XXXX项目 数据库设计说明书

变更履历

第1章引言 (1) 1.1 编写目的 (1) 1.2 背景 (1) 1.3 术语定义 (1) 1.4 参考资料 (1) 第2章外部设计 (3) 2.1 标识符和状态 (3) 2.2 使用它的程序 (3) 2.3 约定 (3) 2.3.1数据库设计的范围 (3) 2.3.2 命名的总体规则及注意事项 (3) 2.3.3 数据模型设计工具要求 (4) 2.4 支持软件 (4) 第3章结构设计 (5) 3.1 物理结构设计 (5) 3.1.1 表空间物理存储参数 (5) 3.1.2 表空间SQL规程 (6) 3.1.3 数据库用户创建 (7) 3.1.4 数据库例程创建 (7) 3.1.5 角色授权 (7) 第4章运用设计 (8) 4.1 数据字典设计 (8) 4.1.1 表名的命名规范 (8) 4.1.2 表字段命名规范 (9) 4.2 安全保密设计 (9) 第5章风险评估 (10) 5.1 表汇总列表 (10) 5.2 实体关系图 (10) 5.3 表详细设计 (11) 第6章安全检查 ....................................... 错误!未定义书签。 6.1 表汇总列表 ..........................................错误!未定义书签。 6.1 实体关系图 ..........................................错误!未定义书签。 6.2 表详细设计 ..........................................错误!未定义书签。第7章绩效管理 ....................................... 错误!未定义书签。 7.1 表汇总列表 ..........................................错误!未定义书签。 7.2 实体关系图 ..........................................错误!未定义书签。 7.3 表详细设计 ..........................................错误!未定义书签。第8章安全响应、预警和管理............................. 错误!未定义书签。 8.1 表汇总列表 ..........................................错误!未定义书签。

数据库课后题答案 第7章 数据库设计

第7章数据库设计 1.试述数据库设计过程。 答:这里只概要列出数据库设计过程的六个阶段:( l )需求分析;( 2 )概念结构设计;( 3 )逻辑结构设计;( 4 )数据库物理设计;( 5 )数据库实施;( 6 )数据库运行和维护。这是一个完整的实际数据库及其应用系统的设计过程。不仅包括设计数据库本身,还包括数据库的实施、运行和维护。设计一个完善的数据库应用系统往往是上述六个阶段的不断反复。 2 .试述数据库设计过程各个阶段上的设计描述。 答:各阶段的设计要点如下:( l )需求分析:准确了解与分析用户需求(包括数据与处理)。( 2 )概念结构设计:通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS 的概念模型。( 3 )逻辑结构设计:将概念结构转换为某个DBMS 所支持的数据模型,并对其进行优化。( 4 )数据库物理设计:为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)。( 5 )数据库实施:设计人员运用DBMS 提供的数据语言、工具及宿主语言,根据逻辑设计和物理设计的结果建立数据库,编制与调试应用程序,组织数据入库,并进行试运行。( 6 )数据库运行和维护:在数据库系统运行过程中对其进行评价、调整与修改。 3 .试述数据库设计过程中结构设计部分形成的数据库模式。 答:数据库结构设计的不同阶段形成数据库的各级模式,即:( l )在概念设计阶段形成独立于机器特点,独立于各个DBMS 产品的概念模式,在本篇中就是 E 一R 图;( 2 )在逻辑设计阶段将 E 一R 图转换成具体的数据库产品支持的数据模型,如关系模型,形成数据库逻辑模式,然后在基本表的基础上再建立必要的视图( Vi 娜),形成数据的外模式;( 3 )在物理设计阶段,根据DBMS 特点和处理的需要,进行物理存储安排,建立索引,形成数据库内模式。 4 .试述数据库设计的特点。 答:数据库设计既是一项涉及多学科的综合性技术又是一项庞大的工程项目。其主要特点有:( l )数据库建设是硬件、软件和干件(技术与管理的界面)的结合。( 2 )从软件设计的技术角度看,数据库设计应该和应用系统设计相结合,也就是说,整个设计过程中要把结构(数据)设计和行为(处理)设计密切结合起来。 5 .需求分析阶段的设计目标是什么?调查的内容是什么? 答:需求分析阶段的设计目标是通过详细调查现实世界要处理的对象(组织、部门、企业等),充分了解原系统(手工系统或计算机系统)工作概况,明确用户的各种需求,然后在此基础上确定新系统的功能。调查的内容是“数据’夕和“处理”,即获得用户对数据库的如下要求:( l )信息要求,指用户需要从数据库中获得信息的内容与性质,由信息要求可以导出数据要求,即在数据库中需要存储哪些数据;( 2 )处理要求,指用户要完成什么处理功能,对处理的响应时间有什么要求,处理方式是批处理还是联机处理;( 3 )安全性与完整性要求。 6 .数据字典的内容和作用是什么? 答:数据字典是系统中各类数据描述的集合。数据字典的内容通常包括:( l )数据项;( 2 )数据结构;( 3 )数据流;( 4 )数据存储;( 5 )处理过程五个部分。其中数据项是数

相关文档