预览加载中,请您耐心等待几秒...
1/2
2/2

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

HYPERLINK"http://www.leihe.gov.cn"宜城www.leihe.gov.cniyd摘要:21世纪以来,随着科学技术的不断发展,身处信息化时代的我们,信息对于我们的重要程度不言而喻。海量的信息其实就是海量的数据,如何存储与利用这些数据的研究,就应运数据库的产生。自然数据库设计也就成一项专业技能。数据库可以分为层次、网状和关系数据库这三类,今天我们主要的就是来探讨关系数据库设计方法,这也是目前用途最广的一类数据库。中国论文网关键词:关系数据库;数据库设计;数据库优化;DBMS中图分类号:TP文献标识码:A文章编号:1671—7597(2012)0510009-01数据库设计其实就是根据需求要实现什么功能,需要存放什么数据,然后我们根据这个来设计最优的数据存储方式,以及如何提高读取数据,新增数据,更新删除数据的速度。数据库设计可分为需求分析阶段、概念设计阶段、逻辑设计阶段和物理设计阶段这四个阶段,这也是软件工程化的思想。需求分析阶段主要是和客户沟通,了解客户具体的需求,换句话说就是去了解要存放什么数据。概念设计是根据需求分析阶段得到的用户需求,然后针对需求对数据库做大体上的设计规划。逻辑设计阶段的主要任务是分析数据之间的相互关系,以及确定整体的设计框架。物理设计阶段则是对每个表做具体的设计,如定义字段、键主键等。1数据库分析和设计阶段在数据库的需求分析阶段,需要开发人员深入到每一个需求客户中去挖掘以及分析,弄清楚用户的需求。绝大多数用户对相关数据库技术可能并不是很了解,开发人员尽量不要用专业词语跟客户沟通,其实很多时候用户可能都不知道自己的准确需求,因此这就需要调研人员从多种角度、多个方位去与用户沟通交流,最大程度的弄明白用户的各种需求。数据库设计的基础就是基础分析,这也是数据库设计环节里难度最高、也最难控制的一个阶段,一般都要经过无数次重复的调研以及反向调研,才最终确定。同时需求分析的好坏,整个数据库的设计都会受到影响,所以这一阶段至关重要。强调一点的是,这个阶段是伴随数据库设计整个周期的。在数据库的概念设计阶段,数据库开发设计人员要从需求分析阶段得出到的结果,从用户的眼光出发,勾勒出各种数据的处理细节,彼此之间的联系,最后让用户理解并能够操作设计出的数据模型。在这个阶段关系型数据库呈现的是一种设计好的用户需求E—R图。在此基础上,就算是在需求分析阶段没有全面充分考虑到或是遗漏的任务也可以做出及时的补救。实体关系图可以一目了然的看清数据间的联系与处理,并且还可以给数据库开发设计人员,下一个环节的设计提前做好准备,这也是数据库设计最核心、最关键的部分。2数据库逻辑与物理设计阶段数据库逻辑设计阶段是指把上一阶段获得的,独立于其他数据库管理系统的E-R图,转换到另外一种具体的数据库管理系统中,并做设计开发。这个阶段需要考虑具体数据库系统的支持的关系模型转换,并根据已有的功能及结构来把实体模型转换为关系模型。设计数据库的细节也是数据库物理阶段的设计,类似于软件工程的详细设计,需要设计数据的存储类型、字段长度的多少,主键设置什么字段,索引设置在哪些字段上,索引数量的建立,以及从数据库整体结构出发考虑到数据的安全性、完整性和效率性。这一阶段说起来简单明了,其实是需要深厚的数据库设计功底和丰富的设计经验才能设计得出完美的数据库。一项索引就可以让人探索研究很久,在哪里建索引,何时建、建多少?这些都不单是理论就能得到最优的结果,需要长期的积累和尝试才能得到。3数据库SQL的优化数据库设计当然不可缺少的是数据库SQL的优化,这里我们探讨下数据库SOL优化要注意的几点:1)勤用WHERE语句。这是设计人员都知晓的,数据库查询效率的高低程度,是人们评判数据库设计的好与坏的一个重要标准,不可怀疑,采用Where条件语句查询数据库,可以提高数据库查询性能。如,在众多报表统计的时候,如果数据量是非常大的时候我们导出数据都是有时间段限制。2)灵活使用函数。如COUNT函数,要合理放置COUNT函数的位置,在通过COUNT函数做统计记录的时候,空行的记录也是会考虑的因素,还有要灵活跟其它函数搭配使用,如与DISTINCT函数结合应用等等。3)只查询必要显示字段,少用*号。数据库检索的速度跟数据量的大小息息相关,在查询的时候,只查询必要的数据及字段是必须要注意的,有时候,用户不同的查询需求可能大多数数据都是相同的,只有一少部分数据不同,为此,我们就得考虑这些内容是放在同一张表中还是不同的表呢,假如仅仅只考虑技术这方面,那两者的实现也不会有太大的难度。可是,要是考虑数据库的性能,那就需要利用不同的表满足的不同的需求。一种是安全性的考虑,可以通过设置不同的访问权限设计不同的表格。可以看到,数据库详尽化,在权限