数据库论文.docx

上传人:b****5 文档编号:4449952 上传时间:2022-12-01 格式:DOCX 页数:5 大小:19.24KB
下载 相关 举报
数据库论文.docx_第1页
第1页 / 共5页
数据库论文.docx_第2页
第2页 / 共5页
数据库论文.docx_第3页
第3页 / 共5页
数据库论文.docx_第4页
第4页 / 共5页
数据库论文.docx_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

数据库论文.docx

《数据库论文.docx》由会员分享,可在线阅读,更多相关《数据库论文.docx(5页珍藏版)》请在冰豆网上搜索。

数据库论文.docx

数据库论文

 

学院:

计算机与信息技术学院

专业:

计算机科学与技术专业

姓名:

龚静

学号:

0908114051

年级:

09级

(2)班

 

数据库设计

摘要:

数据库设计是指根据用户的需求,在某一具体的数据库管理系统上,设计数据库的结构和建立数据库的过程。

数据库设计是建立数据库及其应用系统的技术,是信息系统开发和建议中的核心技术。

由于数据库应用系统的复杂性,为了支持相关程序运行,数据库设计就变得异常复杂,因此最佳设计不可能一蹴而就,而只能是一种“反复探寻,逐步求精”的过程,也就是规划和结构化数据库中的数据对象以及这些数据对象之间关系的过程。

关键词:

数据库设计;数据库应用管理系统;数据库完整性设计

引言:

如果将数据库设计比作是福尔摩斯破案,根据各种条件,限制,规则,抽丝拨茧,寻找其中的相互联系,一步一步深入案件的中间,最终解决案件。

但破案首先需要有方法,那么对于数据库设计目前以使用已久的一系列设计数据库结构的成熟方法(比如:

规范化)都可以作为破案所需方法的良好的根基。

实际上,这些方法几乎都是经典的设计方法,因此,在进行数据库设计的时候,遵循这些方法并不会感觉到太困难。

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

现在的大部分计算机系统中,数据库是核心。

即使不是一个以数据库为核心的系统,也拥有一个数据存储的需要。

软件归根结底,也是对数据的处理。

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

一、数据库设计的特点 

  数据库建设是硬件、软件和干件的结合,三分技术,七分管理,十二分基础数据。

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

数据库设计应该与应用系统设计相结合,结构(数据)设计:

设计数据库框架或数据库结构。

行为(处理)设计:

设计应用程序、事务处理等。

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

二、数据库设计方法简述 

手工试凑法

 设计质量与设计人员的经验和水平有直接关系,缺乏科学理论和工程方法的支持,工程的质量难以保证,数据库运行一段时间后常常又不同程度地发现各种问题,增加了维护代价。

规范设计法

 过程迭代和逐步求精

典型方法:

  

(1)新奥尔良(New Orleans)方法:

将数据库设计分为四个阶段

    S.B.Yao方法:

将数据库设计分为五个步骤

    I.R.Palmer方法:

把数据库设计当成一步接一步的过程

  

(2)计算机辅助设计

    ORACLE Designer 2000

    SYBASE PowerDesigner

三、数据库设计的基本流程

(1)需求分析阶段

调查和分析用户的业务活动和数据的使用情况,弄清所用数据的种类、范围、数量以及它们在业务活动中交流的情况,确定用户对数据库系统的使用要求和各种约束条件等,形成用户需求规约。

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

(2)概念结构设计阶段

此阶段是整个数据库设计的关键。

对用户要求描述的现实世界(可能是一个工厂、一个商场或者一个学校等),通过对其中住处的分类、聚集和概括,建立抽象的概念数据模型。

这个概念模型应反映现实世界各部门的信息结构、信息流动情况、信息间的互相制约关系以及各部门对信息存储、查询和加工的要求等。

所建立的模型应避开数据库在计算机上的具体实现细节,用一种抽象的形式表示出来。

以扩充的实体联系模型方法为例,第一步先明确现实世界各部门所含的各种实体及其属性、实体间的联系以及对信息的制约条件等,从而给出各部门内所用信息的局部描述(在数据库中称为用户的局部视图)。

第二步再将前面得到的多个用户的局部视图集成为一个全局视图,即用户要描述的现实世界的概念数据模型。

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

(3)逻辑结构设计阶段

主要工作是将现实世界的概念数据模型设计成数据库的一种逻辑模式,即适应于某种特定数据库管理系统所支持的逻辑数据模式。

与此同时,可能还需为各种数据处理应用领域产生相应的逻辑子模式。

这一步设计的结果就是所谓“逻辑数据库”。

在逻辑设计阶段,应禁止谈论性能问题,应该瞄准概念模型。

作为一般建议,设计者最好尝试规范化尽量高的级别。

如果在系统测试中,发现了性能问题,则可以反向规范化这个系统。

但我们永远不要为了调整应用程序的性能而放弃规范化的结构。

所以,提倡等到物理模型化阶段或至少迫不得已的理由再反向规范化。

已达到对数据库进行优化的目的。

(4)数据库物理设计阶段

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

根据特定数据库管理系统所提供的多种存储结构和存取方法等依赖于具体计算机结构的各项物理设计措施,对具体的应用任务选定最合适的物理存储结构(包括文件类型、索引结构和数据的存放次序与位逻辑等)、存取方法和存取路径等。

这一步设计的结果就是所谓“物理数据库”。

(5)数据库实施阶段

在上述设计的基础上,收集数据并具体建立一个数据库,运行一些典型的应用任务来验证数据库设计的正确性和合理性。

建立或者修订数据库之后,必须用用户新输入的数据测试数据字段。

最重要的是,让用户进行测试并且同用户一道保证你选择的数据类型满足商业要求。

测试需要在把新数据库投入实际服务之前完成。

运用DBMS提供的数据语言、工具及宿主语言,根据逻辑设计和物理设计的结果建立数据库,编制与调试应用程序,组织数据入库,并进行试运行

(6)数据库运行和维护阶段

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

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

至今,数据库设计的很多工作仍需要人工来做,除了关系数据库已有一套较完整的数据范式理论可用来部分地指导数据库设计之外,尚缺乏一套完善的数据库设计理论、方法和工具,以实现数据库设计的自动化或交互式的半自动化设计。

所以数据库设计今后的研究发展方向是研究数据库设计理论,寻求能够更有效地表达语义关系的数据模型,为各阶段的设计提供自动或半自动的设计工具和集成化的开发环境,使数据库的设计更加工程化、更加规范化和更加方便易行,使得在数据库的设计中充分体现软件工程的先进思想和方法。

三、数据完整性设计

(1)完整性实现机制:

 实体完整性:

主键

  参照完整性:

  父表中删除数据:

级联删除;受限删除;置空值

  父表中插入数据:

受限插入;递归插入

  父表中更新数据,级联更新;受限更新;置空值

  DBMS对参照完整性可以有两种方法实现:

外键实现机制(约束规则)和触发器实现机制

  用户定义完整性:

  NOTNULL;CHECK;触发器

  

(2)用约束而非商务规则强制数据完整性

  采用数据库系统实现数据的完整性。

这不但包括通过标准化实现的完整性而且还包括数据的功能性。

在写数据的时候还可以增加触发器来保证数据的正确性。

不要依赖于商务层保证数据完整性;它不能保证表之间(外键)的完整性所以不能强加于其他完整性规则之上。

  (3)强制指示完整性

  在有害数据进入数据库之前将其剔除。

激活数据库系统的指示完整性特性。

这样可以保持数据的清洁而能迫使开发人员投入更多的时间处理错误条件。

 (4)使用查找控制数据完整性

  控制数据完整性的最佳方式就是限制用户的选择。

只要有可能都应该提供给用户一个清晰的价值列表供其选择。

这样将减少键入代码的错误和误解同时提供数据的一致性。

某些公共数据特别适合查找:

国家代码、状态代码等。

 (5)采用视图

为了在数据库和应用程序代码之间提供另一层抽象,可以为应用程序建立专门的视图而不必非要应用程序直接访问数据表。

这样做还等于在处理数据库变更时给你提供了更多的自由。

四、提高运行效率的方法

在给定的系统硬件和系统软件条件下,提高数据库系统的运行效率的办法是:

(1)在数据库物理设计时,降低范式,增加冗余,少用触发器,多用存储过程。

(2)当计算非常复杂、而且记录条数非常巨大时(例如一千万条),复杂计算要先在数据库外面,以文件系统方式用C++语言计算处理完成之后,最后才入库追加到表中去。

这是电信计费系统设计的经验。

(3)发现某个表的记录太多,例如超过一千万条,则要对该表进行水平分割。

水平分割的做法是,以该表主键PK的某个值为界线,将该表的记录水平分割为两个表。

若发现某个表的字段太多,例如超过八十个,则垂直分割该表,将原来的一个表分解为两个表。

(4)对数据库管理系统DBMS进行系统优化,即优化各种系统参数,如缓冲区个数。

(5)在使用面向数据的SQL语言进行程序设计时,尽量采取优化算法。

要提高数据库的运行效率,必须从数据库系统级优化、数据库设计级优化、程序实现级优化,这三个层次上同时下功夫。

总之,在进行数据库设计的时,一定要综合考虑多种因素,具体问题具体分析,既要考虑当前实现的可行性,又要考虑以后的升级维护:

既要减轻前台编码的负担,又要让后台的管理简单易行;既要让前台的查询效率高,又要让后台的实现方便可行。

数据库设计是一项综合型设计,绝非一朝一夕之功,只有在学习、工作中多思考、多动脑、多总结、灵活运用所学知识,综合各种考虑因素,平衡把握每个细节,这样,数据库设计才会更加科学、合理。

参考文献:

(1)数据库系统概论高等教育出版社王珊,萨师煊著

(2)数据库设计机械工业出版社何玉洁著

(3)数据库管理系统清华大学出版社尹买华著

 

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 小学教育 > 其它课程

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1