• 美文
  • 文章
  • 散文
  • 日记
  • 诗歌
  • 小说
  • 故事
  • 句子
  • 作文
  • 签名
  • 祝福语
  • 情书
  • 范文
  • 读后感
  • 文学百科
  • 当前位置: 柠檬阅读网 > 故事 > 正文

    完整的数据库设计案例 [数据库设计的理论和实践在软件开发中的作用]

    时间:2019-06-01 03:29:18 来源:柠檬阅读网 本文已影响 柠檬阅读网手机站

      摘要:作为一门应用性很强的学科,数据库技术是目前在软件开发中应用越来广泛,本文对软件开发中的数据库设计理论与实践进行了简单分析。首先,简单介绍了软件开发中的数据库设计的重要性;其次,分析了软件开发中的数据库设计的理论;介绍了数据库设计的几个原则,并对数据库设计步骤进行了一定的分析。最后,结合实例,分析了软件开发中的数据库设计的实践。
      关键词:软件开发;数据库设计;重要性;理论;实践
      中图分类号:TP文献标识码:A文章编号:1673-9671-(2012)042-0136-02
      随着计算机科学技术迅速发展,互联网的日益普及。人们对软件产品的要求日益提高,尤其软件开发企业对软件产品的要求越来越高。作为一门应用性很强的学科,数据库技术是目前在软件开发中应用越来广泛,软件开发中数据库设计理论实践研究也越来越受到业界人士的注重。
      1软件开发中数据库设计的重要性
      在软件开发过程中,一般会分为五个阶段,即需求分析、软件设计、软件编码、软件测试和对软件的维护。在具体的设计阶段,首要的任务就是设计出模块的程序流程、设计出算法和数据结构,次要的任务是对数据库进行设计。数据库技术作为信息处理的重要方式,在各种各样的软件开发中,大多数的软件开发都要运用数据库技术,进行数据库设计,管理信息系统的开发就是典型表现。通常,数据库的设计主要是指根据不同用户的不同需求,在一定的数据库管理系统的基础上来实现通过设计出的数据库的结构并建立起数据库的过程。它是建立数据库及其应用系统的一种很强的技术,所以,数据库设计是信息系统的开发和建议中的一项核心技术。因为Visual C++具有强大的处理图像能力与强大的计算数值能力,同时其具有良好的面向对象特性,因此其成为全球内各种各样的机械工程软件系统的主要开发工具。同时,在开发这些软件时,常常要进行许多数据线图与数据表格的处理查找的工作,若在每次运行程序过程中,都是人工查找这些数据,不仅使用户有了许多麻烦,也使开发出来的软件表现的相当不专业。此时运用数据库编程技术,能够把许多的数据及数据表格事先存储起来,当需要使用某个数据时,可以通过数据库进行查找,还能够把用户设计过程中需要的某些设计数据存储起来,使后续设计过程更加方便,进而使软件产品生产的速度以及质量得以提高。由此可见,在软件开发过程中,数据库设计是相当重要的。
      2软件开发中的数据库设计的理论分析
      1)Visual C++系统能够支持许多种DBMS(数据库管理系统),很多数据库管理系统都有SQL语言接口,同时SQL语言能够在Visual C++系统中直接运行。Visual C++系统对数据库有了全方位的支持,能够和Vsual Basic以及Fox Pro等许多系统软件相媲美,同时在对一些特性的支持上,Visual C++甚至比这些技术更完美。在用Visual C++开发的应用程序时,一方面应该访问数据库;另一方面能够把Visual C++作为数据库应用程序的前端开发工具运用。Visual C++中应用最广泛的就是ADO技术和ODBC技术,ADO是Microsoft公司推出的产品,以保证在Internet网络上数据库的发布,能够使远程数据访问复杂性降低,可以使数据库得到高效访问。在ADO编程上,其更方便,更简单,数据源和前端之间的网络通信最小。同时ADO能够进行高性能以及一致的数据访问,可以满足各种各样的软件开发要求。
      2)在进行数据库与数据库管理系统的设计时,必须重点考虑数据模型。当进行数据模型的选择时,以下几个因素至关重要:数据模型因素,根据不同的应用需要,应该选择相关的数据模型,在一般情况下,应用者往往希望采用关系模型,由于该模型是非过程的,当用户给出需要查询的条件时,无须考虑实际的物理存储路径等因素,就能够得出正确结果,使用起来极其方便,但是在大型数据库管理系统中,应该优化查询,使关系模型中查询的效率得到提高,比如在公路设计中,分析管理内容,发现其实体间的关系不复杂,能够采用扩展关系模型(关系表加指针);数据库结构因素,根据实际情况的分析设计,能够确定具体的数据库系统结构;管理对象因素,根据实践情况,要把数据库中的实体进行分类,同时保证每个实体都有非几何数据及几何数据;数据操作因素,当进行数据库操作时,按照实践情况的要求,操作并存取某个图形,把图形作为整体进行处理,简单的接口程序使应用程序更具有灵活性,运用整体图形,能够减小指针占有的存储空间。
      3数据库设计的几个原则
      3.1命名的规范化
      我们知道,不一样的数据库产品对于对象的命名是有不同要求的。在数据库设计中,对于各对象的命名以及在编写后台程序的代码上都应采用大小写的字母形式,命名长度不超过30个
      字符。
      3.2慎用游标
      对大表或者多表定义的游标,即大的数据集合而言,程序中使用游标逐行遍历数据线,容易导致进入了漫长的等待或挂起状态,使用游标,我们可以创建一个临时表,那些符合条件的满足的数据 转换成临时表中的行,临时表定义游标操作,这样做可以大大提高游标的性能。
      3.3索引的使用
      显然,索引一般是用于快速访问表中的数据。通常,大型的数据库会有两种索引,一种是簇索引,一种是非簇索引。无论是添加哪一种索引,都可以使按索引列查询的速度大大提高,虽然在速度上有所提高。但是在插入、更新、删除等操作上性能会有所降低,特别是在填充因子比较大时,降低效果更明显。因此,对索引较多的表进行频繁的插入、更新、删除操作时,在对于表和索引的建立上,应该设置较小的填充因子。这样才能方便在各项数据页中留下足够的自由空间,以减少页分割或重新组织的工作量,才能够有效提高性能。
      3.4数据的完整性和一致性
      为了有效保证数据库的完整性和一致性,通常设计人员会设计比较多的表间关联,以最大程度地降低数据的冗余。由于表间的关联是一种强制性的措施,所以建立表后,对于父表和子表的插入、更新、删除等操作都会占用系统整体的开销。还有,尽量不要选用Identify属性的字段作为主键与子表关联。另外,为了能够很好地提高系统的响应时间,选择合理的数据冗余也是很有必要的。
      3.5事务的使用
      事务一般是要一次性完成的操作。这些操作都是单个的操作,但数据库系统可以保证事务这一组操作全部完成或者一点都不做。大型数据库的这一优越特性,使数据的完整性在很大程度上得到了保证。
      3.6数据库性能的调整
      在网络设计和计算机硬件配置确定的情况下,影响应用系统性能的因素主要是客户端程序设计和数据库性能。大部分的数据库设计员都会采用两步法开展数据库设计。具体的设计步骤是:首先是逻辑结构设计,其次进行物理结构设计。逻辑结构设计,有效地遏制冗余数据,可以大大提高数据吞吐率,从而确保数据的完整性,清楚地表达数据元素之间的关系。对于一个关系查询表,其性能可能会降低,但也提高了客户端编程的难度。因此,需要在物理结构设计中妥协,按业务规则,以确定关联表的数据大小,数据访问频率,这个数据表上频繁关联查询应适当提高数据冗余的设计。
      3.7数据类型的设计
      数据类型的合理选设计会在很大程度上影响到数据库的性能和操作。因此,要根据数据库具体的要求与规则设计合适并合理的数据类型。
      4软件开发中的数据库设计的实践分析
      以下以图书管理软件开发中的数据库设计为例进行了分析。
      1)应该重视系统的总体设计,在进行软件编制时,系统的总体设计相当重要,不仅与软件项目顺利开展的进度有关,还与是否可以达到预期的项目开发的要求有关,下面我以图书管理软件开发为例简单进行说明。
      2)首先我们对图书管理软件所涉及的数据类型和结构进行详细的分析,按照上述的设计思想,共设计了如下的多种表,例如:读者表,书目表,馆藏表,流通表等。然后创建视图和存储过程。
      ①读者表:JNO(借书证号),NAME(姓名),UNIT(单位),Readership(读者类别)等字段,关键字为JNO(借书证号)。
      ②书目表:Collection No(馆藏号),ISBN,Title(题名),Author(作者),Press(出版社),Language(语种),Type(文献类型)等字段,关键字为Collection No(馆藏号)。
      ③馆藏表:Collection No(馆藏号),Type No(分类号),Kinds of times No(种次号),Collection location(馆藏位置),Unit price(单价),等字段,关键字为:Collection No(馆藏号)。
      ④流通表:JNO(借书证号),Collection No(馆藏号),Bdate(借期),Rdaye(还期),Renew(续借),Yhdate(应还期),Operator(操作员)等字段,关键字为:JNO(借书证号),Collection No(馆藏号)。
      ⑤借阅规则表:Readership(读者类别),Book Category)图书类别),Limited(限借册数),Days(每期天数),Xdays(续借天数),Fine calculation(罚金计算)等字段。
      ⑥图书类别表:Book CategoryNo(图书类别编码),Book Category(图书类别)等字段。
      建立索引是加快查询速度的有效手段,数据库的每一个表建立了主键,主键由一个或几个字段组成,每一个表都按主键建立了索引,部分表为了满足查询和排序的需要,除建立主索引外,还建立了次索引。例如在查询时要用到“馆藏号”、“作者”、“题名”等条件来查找图书,因此,在书目表上除了对主键“馆藏号”建立了主索引外,也对“作者”、“书名”等建立了次索引。由此可见,这种从属关系的建立不但对空间从属关系进行了考虑,而且考虑到了时间上的顺序。同时在关系数据库中,数据在各个表中保存,按照主键与外键的关系,各个表之间能够建立关系。再对各属性对象的数据库表进行设计,此时可以对属性数据进行储存,并对它们之间的从属关系进行描述,创造了进行下一步查询的条件。
      3)合理实现单文档以及多窗口视界面,在该图书管理软件开发中,对单文档以及多窗口视界面结构进行了设计,其不仅具备多文档界面的风格,还能够使多个输入的Form View同时打开,可以进行随时切换,使数据查看与录入更加方便。当用户在输入某图书进行数据查询时,该图书的属性窗口能够被看到。同时图书管理软件必须具备强大的容错功能,当用户误操作以及误输入时,其能够自动提示并取消输入。
      5总结
      随着科学技术快速发展,人类对各种软件开发的需求日益增加,软件开发中的数据库设计也越来越重要。显然,使整个数据库的设计更加的工程化、规范化和便捷化将是我们今后要不断去争取做好的。未来数据库设计的研究方向是数据库设计理论方面的内容,通过完善的理论研究来建立起准确的模型,在整个数据库的设计中充分体现出其先进的思路和方法,最终达到数据库的设计更加的工程化、规范化和便捷化的目的。
      
      参考文献
      [1]石红兵,曾学贵,魏庆朝.勘测设计一体化软件开发过程中数据库的设计[J].公路,2000,10.
      [2]何玉洁等.数据库原理与应用-第2版[J].机械工业,2011.
      [3]游晓明,刘升.数据库系统原理课程教改的研究和实践[J].教学研究,2004,5.

    相关热词搜索: 实践 作用 数据库 开发

    • 文学百科
    • 故事大全
    • 优美句子
    • 范文
    • 美文
    • 散文
    • 小说文章