欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

数据库设计的三个阶段

程序员文章站 2022-05-19 09:56:42
...

数据库的设计一共分多少个阶段呢,严来说,不止三个阶段,今天我们仅讨论其中的三个阶段。概念设计、逻辑设计和物理设计阶段。 首先要搞清楚几个问题,数据库为什么要分阶段设计?三个阶段有什么联系?要说清楚这几个问题,只有理论是说不清的,我们还是来举

数据库的设计一共分多少个阶段呢,严格来说,不止三个阶段,今天我们仅讨论其中的三个阶段。概念设计、逻辑设计和物理设计阶段。

首先要搞清楚几个问题,数据库为什么要分阶段设计?三个阶段有什么联系?要说清楚这几个问题,只有理论是说不清的,我们还是来举个例子吧。

现在有一个图书馆,需要为读者信息、图书信息、借阅信息建立一个数据库,读者信息包括姓名、学号、性别、办卡日期、家庭住址、联系电话、类别等,图书信息包括编号、作者、出版信息、页数、登记日期等,借阅信息包括借书证号、图书编号、书名、借还日期等,这么多的信息,如果在没有进行分析之前就开始设计数据库是不现实的。所以,首先要把这些数据进行分类、整理(概念模型),然后画出图表或者表格,最后画出这些数据信息的关系结构(逻辑模型),甚至制定数据库的存储记录格式、存储记录安排、和存取方法(物理模型)使用户能简单、方便、容易的存取数据。所以,数据库设计必须经过这三个设计阶段,下面我们来详细讨论这三个设计阶段。

一 从上面的例子,我们可以得出以总结出三个阶段(模型)各自的特点:

1 概念模型:首先,概念模型是一个工具,是数据库设计人员和客户进行交流的平台;它独立于硬件和软件;概念模型表达了数据的整体逻辑结构,它是系统用户对整个应用项目设计的数据的全面描述;概念模型是从用户的观点出发,对数据建模。

2 逻辑模型:逻辑模型首先也是一个工具,它是数据库设计人员和应用程序员进行交流的平台;逻辑模型独立于硬件,但是却依赖于软件(数据库系统);逻辑模型表达了数据库的整体逻辑结构,但它是设计人员对整个项目数据库的全面描述;逻辑模型是从数据库实现的观点出发,对数据建模。

3 物理模型:物理模型(内部模型)是数据库最底层的抽象,它描述数据在磁盘或磁带上的存储方式(文件的结构)、存取设备(外存的空间分配)和存取方法(主索引和辅助索引)。

概念模型和逻辑模型各有不同,用一个表格对比一下。

特点

功能

出发点

独立性

用户

概念模型

表达了数据的整体逻辑结构

用户需求

独立于硬件和软件

设计人员和用户

逻辑模型

表达了数据库的整体逻辑结构

数据库实现

独立于硬件但是依赖于软件(数据库系统)

设计人员和应用程序员

二 咱们再从数据描述来探讨他们的区别于联系。

1 数据库的概念设计是根据用户的需求设计数据库的概念结构,他以规范的形式,表达了用户需求所涉及事物的理解。这一阶段用到四个术语:

实体:客观存在,可以相互区别的事物就是实体,它可以是具体的对象,一个人,一个房子等等,也可以是一个抽象的对象,马克思主义,*思想等等;

实体集:简单来说就是同类实体的集合,我们都学过集合,这个概念就不深究了;属性:实体的特性就是属性,这个概念可以对比vb控件来学习,每一个属性都有一个值域,它的类型也是各种各样。

实体标识符:能唯一标识实体的属性或属性集,也称关键码(key)。

2 数据库的逻辑设计是根据概念设计的结果设计数据库的逻辑结构,及表达方式和实现方法。逻辑设计有许多方法,每个方法都有一套术语,下面列举最常用的一套术语:

字段:标记实体属性的命名单位,它是可以命名的最小实体单位,又称为数据元素或初等项,它的命名旺旺和属性名相同。

记录:字段的有序集合成为记录,一般用一个记录来描述一个实体。

文件:同一类记录的集合。

关键码:能唯一标识文件中每个记录的字段或字段集。

用一个表格来对比概念和逻辑设计中数据的联系:

概念设计

实体

属性

实体集

实体标识符

……

……

……

……

逻辑设计

记录

字段

文件

关键码

3 数据库物理设计,它涉及到了硬件知识,咱们这里只做介绍,不做讨论了。高速缓冲存储器(Cache):访问速度最快,最贵的存储器;主存储器:也就是内存;快擦科协存储器:介于内存和硬盘之间的一种存储器;磁盘存储器:俗称硬盘;光存储器:光盘;磁带等。下面用一张图来描述他们的存储层次关系:

数据库设计的三个阶段

三 理论性的东西没有直观性,我们还以上面图书馆的例子为基础,继续讨论三个设计阶段的特点和联系。

首先应该分析数据信息,画出他们的联系,下面是读者和图书之间的简单关系图(ER图)

数据库设计的三个阶段数据库设计的三个阶段数据库设计的三个阶段

数据库设计的三个阶段

这个简单的ER图直观的表达除了读者和图书之间的关系,根据这个图,我们可以列出五个相互联系的表格,联系如下:喎?http://www.2cto.com/kf/ware/vc/" target="_blank" class="keylink">vcD4KPHA+ICAgICA8aW1nIHNyYz0="" alt="\">数据库设计的三个阶段数据库设计的三个阶段

这五个表格就是数据库逻辑设计的表格的内容了。具体数据库表格就不画了。