数据库设计过程

之前完成了一遍机房收费,但是,数据库只是按部就班的把原版数据库抄下来,并没有按照步骤设计。这次.NET版机房收费,对我们的要求高了,完全按照步骤开发,数据库的设计也成了非常重要的一部分。

数据库技术是信息资源管理最有效地手段。数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,有效存储数据,满足用户信息要求和处理要求。

数据库的设计的步骤和各阶段的主要内容如下:

数据库的设计过程主要包括着六个阶段:

1、需求分析

需求分析阶段应该对系统的整个应用情况作全面的、详细的调查,确定企业组织的目标,收集支持系统总的设计目标的基础数据和对这些数据的要求,确定用户的需求,并把这些要求写成用户和数据库设计者都能够接受的需求分析报告。这一阶段的工作只要有,分析用户活动,产生业务流程图;确定系统范围,产生体统范围图;分析用户活动涉及的数据,产生数据流程图;分析系统数据,产生数据字典。

2、概念设计

通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型,可以用E-R图表示。

概念模型用于信息世界的建模。概念模型不依赖于某一个DBMS支持的数据模型。概念模型可以转换为计算机上某一DBMS支持的特定数据模型。

概念模型特点:

(1) 具有较强的语义表达能力,能够方便、直接地表达应用中的各种语义知识。

(2) 应该简单、清晰、易于用户理解,是用户与数据库设计人员之间进行交流的语言。


  3、逻辑设计

将概念结构转换为某个DBMS所支持的数据模型(例如关系模型),并对其进行优化。设计逻辑结构应该选择最适于描述与表达相应概念结构的数据模型,然后选择最合适的DBMS。

将E-R图转换为关系模型实际上就是要将实体、实体的属性和实体之间的联系转化为关系模式,这种转换一般遵循如下原则:

(1)一个实体型转换为一个关系模式。实体的属性就是关系的属性。实体的码就是关系的码。

(2)一个m:n联系转换为一个关系模式。与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性。                  而关系的码为各实体码的组合。

(3)一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为n端实体的码。

(4)一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。

(5)三个或三个以上实体间的一个多元联系转换为一个关系模式。与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性。而关系的码为各实体码的组合。

(6)同一实体集的实体间的联系,即自联系,也可按上述1:1、1:n和m:n三种情况分别处理。

(7)具有相同码的关系模式可合并。

为了进一步提高数据库应用系统的性能,通常以规范化理论为指导,还应该适当地修改、调整数据模型的结构,这就是数据模型的优化。确定数据依赖。消除冗余的联系。确定各关系模式分别属于第几范式。确定是否要对它们进行合并或分解。一般来说将关系分解为3NF的标准,即:

(1)表内的每一个值都只能被表达一次。

(2)表内的每一行都应该被唯一的标识(有唯一键)。

(3)表内不应该存储依赖于其他键的非键信息。

  4、物理设计

为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)。根据DBMS特点和处理的需要,进行物理存储安排,设计索引,形成数据库内模式。

5、实施阶段

运用DBMS提供的数据语言(例如SQL)及其宿主语言(例如VB.NET),根据逻辑设计和物理设计的结果建立数据库,编制与调试应用程序,组织数据入库,并进行试运行。

  6、运维阶段

数据库应用系统经过试运行后即可投入正式运行。在数据库系统运行过程中必须不断地对其进行评价、调整与修改。包括:数据库的转储和恢复、数据库的安全性、完整性控制、数据库性能的监督、分析和改进、数据库的重组织和重构造。

数据库设计过程

时间: 2024-08-06 00:15:24

数据库设计过程的相关文章

ACCP7.0优化MYSCHOOL数据库设计内测笔试题总结

) 在SQL Server 中,为数据库表建立索引能够(C ). 索引:是SQL SERVER编排数据的内部方法,是检索表中数据的直接通道 建立索引的作用:大大提高了数据库的检索速度,改善数据库性能 A. 防止非法的删除操作 B. 防止非法的插入操作 C. 提高查询性能 D. 节约数据库的磁盘空间 2) 在SQL SERVER中,创建一个表使用(C  )语句. A. INSERT   增加数据 B. DROP      删除数据库,表,约束,视图,索引,存储过程 C. CREATE   创建数据

数据库设计中主键问题

转自: http://www.jb51.net/article/40933.htm 数据库主键在数据库中占有重要地位.主键的选取策略决定了系统是否可靠.易用.高效.本文探讨了数据库设计过程当中常见的主键选取策略,并剖析了其做主键的优缺点,提出了相应的解决问题的方法 在基于关系型数据库设计时候,通常要为每张表指定一个主键,所谓主键就是能够唯一标识表中某一行记录的属性或属性组,一个表只能有一个主键,但可以有多个候选索引.因为主键可以唯一标识某一行记录,所以可以确保执行数据更新.删除.修改时不出现错误

<<MySchool数据库设计优化>> 内部测试

1) 在SQL Server 中,为数据库表建立索引能够( C ). A. 防止非法的删除操作 B. 防止非法的插入操作 C. 提高查询性能 D. 节约数据库的磁盘空间 解析:索引的作用是通过使用索引,大大提高数据库的检索速度,改善数据库性能 2) 在SQL SERVER中,创建一个表使用(  C)语句. A. INSERT B. DROP C. CREATE D. ALERT 解析:A :insert 插入数据.   B: drop 进行删除操作 D:alter 添加约束 3) 在SQL SE

关系型数据库设计范式

范式: 设计关系数据库时,遵从不同的规范要求,设计出合理的关系型数据库,这些不同的规范要求被称为不同的范式,各种范式呈递次规范,越高的范式数据库冗余越小. 首先要明白”范式(NF)”是什么意思.按照教材中的定义,范式是“符合某一种级别的关系模式的集合,表示一个关系内部各属性之间的联系的合理化程度”.很晦涩吧?实际上你可以把它粗略地理解为一张数据表的表结构所符合的某种设计标准的级别. 就像家里装修买建材,最环保的是E0级,其次是E1级,还有E2级等等.数据库范式也分为1NF,2NF,3NF,BCN

MSSQL之六 数据库设计

本章主要讲解关系数据理论,以及数据库的设计过程 . 关系数据理论方面主要介绍对范式的理解,关系模式是关系所设计的属性的集合.这些属性的设置是出于对刻画实体以及实体间联系的需要.在保证能够满足这种需要的前提下这些属性是否都是必要的?如果不是,就应该将其删除,否则会造成数据冗余和其他的一些问题,而范式就是为了解决这些问题而产生的 数据库设计过程主要介绍在通常情况下,设计数据库要经过的步骤. 重点 ?  不同范式的联系和区别 ?  数据库设计过程的步骤 预习功课 ?        了解函数依赖的含义

数据库设计(一) 需求分析

目前,大多数的应用系统都属于数据库应用程序,都离不开数据库的支持.数据库设计方案的优劣对于应用程序的运行至关重要.数据库设计过程就是针对具体的应用环境,设计优化的逻辑模式,并根据所采用的数据库系统设计物理结构,最后建立应用程序的数据库. 数据库设计过程可以理解为提出问题.分析问题.解决问题的过程,具体包含6个步骤:需求分析.概念结构设计.逻辑结构设计.物理结构设计.数据库实施.数据库运行和维护.下图是数据库的总体设计过程. 需求分析的的主要任务是熟悉系统的业务,明确用户的需求.终点是调查与分析用

浅谈数据库设计二三事

作为程序员,程序设计前的数据库设计非常重要,这将直接关系到紧接着的代码编写工作,这里谈谈有关数据库设计过程中的一些细节问题.  一.数据表主键的字段选择(ID,Code,Number) ID(编号)一般是选择GUID,这种格式的字符串是一串全球唯一的字符串.当程序需要调用不同平台上的相同结构的数据库时,建议使用guid来作为主键.这样做的好处是,当在某一平台上汇总不同平台的数据时,同一表中的数据汇总不会出现因为主键相同而无法正常汇总的情况.Code(编码)一般是一串非全数字的字符串,比如字母混合

数据库设计的两种过程模型

文前小叙 做完毕业实习的项目以后,思考过很多.个人觉得,软件过程和把控不当是,目前对个人而言,最影响项目成果的因素.这一点,让我想起了软件能力成熟度模型(CMM):一级为初始级,二级为可重复级,三级为已定义级,四级为已管理级,五级为优化级.总感觉,自己目前的项目管理水平处于第一级到第二级之间,贴近第二级,但仍未完全达到第二级(这,需要从三方面来讲,其一,从最重要的可重复过程级角度:软件项目的研发过程粗略有,但细化到每一个小阶段的操作过程便不一定有:其二,从可重复的文档标准级角度,大学三年期间,虽

噪声收集系统——数据库设计心得

数据库设计心得 在需求分析阶段,其实数据库的设计就已经初具雏形,组内初步分析了需要哪些表来存放哪类数据,并探讨了各个表中的关键字段.但在需求分析阶段的数据库设计并不完整,只描述了部分实体,表中的属性也不能完全描述需求,数据库表间的关系没有体现,这就需要进入详细的数据库设计阶段来完善. 在数据库设计的第一阶段,还是围绕用户需求来展开工作.用户的需求在设计过程中扮演着中心角色,如果一开始对需求的分析就出现偏差,那数据库设计就很容易出现问题,好在需求分析阶段结束后我们的需求是十分明确的,项目组内根据项