在应用环境中如何构造最优的数据库模式

作者:fen 来源:赛迪网 时间:2009-04-01 14:28:00 

数据库设计(Database Design)的概念:数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。

(在数据库领域内,经常把使用数据库的各类系统统称为数据库应用系统)。

一、数据库和信息系统

(1)数据库是信息系统的核心和基础,把信息系统中大量的数据按一定的模型组织起来,提供存储、维护、检索数据的

功能,使信息系统可以方便、及时、准确地从数据库中获得所需的信息。

(2)数据库是信息系统的各个部分能否紧密地结合在一起以及如何结合的关键所在。

(3)数据库设计是信息系统开发和建设的重要组成部分。

(4)数据库设计人员应该具备的技术和知识:

数据库的基本知识和数据库设计技术

计算机科学的基础知识和程序设计的方法和技巧

软件工程的原理和方法

应用领域的知识

二、数据库设计的特点

数据库建设是硬件、软件和干件的结合

三分技术,七分管理,十二分基础数据

技术与管理的界面称之为“干件”

数据库设计应该与应用系统设计相结合

结构(数据)设计:设计数据库框架或数据库结构

行为(处理)设计:设计应用程序、事务处理等

结构和行为分离的设计

传统的软件工程忽视对应用中数据语义的分析和抽象,只要有可能就尽量推迟数据结构设计的决策早期的数据库设计致力于数据模型和建模方法研究,忽视了对行为的设计。

如图:

三、数据库设计方法简述

手工试凑法

设计质量与设计人员的经验和水平有直接关系

缺乏科学理论和工程方法的支持,工程的质量难以保证

数据库运行一段时间后常常又不同程度地发现各种问题,增加了维护代价

规范设计法

手工设计方法

基本思想

过程迭代和逐步求精

规范设计法

典型方法:

(1)新奥尔良(New Orleans)方法:将数据库设计分为四个阶段

S.B.Yao方法:将数据库设计分为五个步骤

I.R.Palmer方法:把数据库设计当成一步接一步的过程

(2)计算机辅助设计

ORACLE Designer 2000

SYBASE PowerDesigner

四、数据库设计的基本步骤

数据库设计的过程(六个阶段)

1.需求分析阶段

准确了解与分析用户需求(包括数据与处理)

是整个设计过程的基础,是最困难、最耗费时间的一步

2.概念结构设计阶段

是整个数据库设计的关键

通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型

3.逻辑结构设计阶段

将概念结构转换为某个DBMS所支持的数据模型

对其进行优化

4.数据库物理设计阶段

为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)

5.数据库实施阶段

运用DBMS提供的数据语言、工具及宿主语言,根据逻辑设计和物理设计的结果

建立数据库,编制与调试应用程序,组织数据入库,并进行试运行

6.数据库运行和维护阶段

数据库应用系统经过试运行后即可投入正式运行。

在数据库系统运行过程中必须不断地对其进行评价、调整与修改

设计特点:

在设计过程中把数据库的设计和对数据库中数据处理的设计紧密结合起来将这两个方面的需求分析、抽象、设计、实现在各个阶段同时进行,相互参照,相互补充,以完善两方面的设计。

五、数据库各级模式的形成过程

1.需求分析阶段:综合各个用户的应用需求

2.概念设计阶段:形成独立于机器特点,独立于各个DBMS产品的概念模式(E-R图)

3.逻辑设计阶段:首先将E-R图转换成具体的数据库产品支持的数据模型,如关系模型,形成数据库逻辑模式;然后根据用户处理的要求、安全性的考虑,在基本表的基础上再建立必要的视图(View),形成数据的外模式。

标签:应用环境,构造,数据库,模式
0
投稿

猜你喜欢

  • 也谈网页圆角的背景图法

    2009-03-19 14:09:00
  • 浅淡BANNER设计

    2010-09-25 18:37:00
  • 在Oracle中向视图中插入数据的方法

    2009-02-28 10:42:00
  • Firefox下正则诡异问题

    2009-08-03 14:03:00
  • asp如何计算下载一个文件需要多长时间?

    2009-11-25 20:17:00
  • asp伪继承初探_实例代码

    2011-04-19 10:32:00
  • 用Oracle并行查询发挥多CPU的威力

    2010-07-23 12:52:00
  • 用SQL Server事件探查器创建跟踪

    2009-02-24 17:45:00
  • Script 元素 type 属性的妙用

    2011-03-07 16:13:00
  • 盗亦有道 Web2.0网站优秀模仿者逐个数

    2007-09-11 19:46:00
  • 针对google Chrome的 CSS hacks

    2009-11-30 12:45:00
  • 《用户体验的要素》摘记

    2008-08-04 17:59:00
  • asp如何最大限度地实现安全登录功能?

    2010-07-11 21:11:00
  • asp彩色验证码的制作详解

    2007-09-18 13:22:00
  • 浅谈ACCESS数据库升迁SQLSERVER注意事项

    2007-08-11 13:44:00
  • 新兴XML处理方法VTD-XML介绍

    2008-09-04 14:42:00
  • 快速解决 MySQL中与浮点比较有关的问题

    2008-11-27 16:28:00
  • text-indent 隐藏文字时出现的 outline问题

    2007-12-02 17:31:00
  • 在ASP编程中nothing代表什么意思?

    2011-04-15 10:47:00
  • Chrome和firefox使用比较测评

    2010-03-26 12:13:00
  • asp之家 网络编程 m.aspxhome.com