毕业设计(论文)-ASP新闻发布系统设计.doc_第1页
毕业设计(论文)-ASP新闻发布系统设计.doc_第2页
毕业设计(论文)-ASP新闻发布系统设计.doc_第3页
毕业设计(论文)-ASP新闻发布系统设计.doc_第4页
毕业设计(论文)-ASP新闻发布系统设计.doc_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘 要随着internet的普及,越来越多的企业建立了自己的www网站,企业通过网站可以展示产品,发布最新动态,与用户进行交流和沟通,与合作伙伴建立联系,以及开展电子商务等。其中新闻管理系统是构成企业网站的一个重要组成部分,它担负着双层作用,一方面可以用来动态发布有关新产品或新开发项目,另一方面又可以及时向顾客公告企业经营业绩、技术与研发进展、特别推荐或优惠的工程项目、产品和服务,从而吸引顾客,扩大顾客群。 传统的网站新闻管理方式有两种,一是静态html页面,更新信息时需要重新制作页面然后上传页面并修改相应链接,这种方式因为效率太低已不多用。二是基于asp和脚本语言,将动态网页和数据库结合,通过应用程序来处理新闻,这是目前较为流行的做法。利用asp技术开发网站新闻发布管理系统,实现了网站新闻的动态管理,使得对信息的管理更加及时、高效,提高了工作效率。本文主要从介绍在线新闻发布的基本概念开始,详细介绍了在线新闻发布系统的功能和结构,并论证了在线新闻发布系统的设计方案,简要介绍了使用的开发工具asp以及涉及到的等相关技术,并以在线新闻发布子系统开发的顺序详细介绍了系统分析,系统设计,系统实施的开发过程, 然后,展示了子系统所实现的功能及部分界面;在介绍某些关键技术的同时,还给出了关键源程序代码。最后对本系统的不足和本人在开发中的认识和感想进行了总结。关键词:asp; access数据库; 新闻发布管理abstractwith the fact that universal , more and more many internet enterprise has built self www website, enterprise announces up-to-date development by the fact that website can show a product, carry out exchange and communicate with the consumer, the buddy who works together builds and connection , electronic commerce carrying out waits and. news management system among them is to compose a important component of enterprise website , it is bearing the bilayer effect , one aspect can be dynamic yong lai announcing the relevant new product or the newly developed project , another aspect cant can timely to customer announcement enterprise manage thereby, achievement , the technology attract a customer , expand with studying the send out progress , special recommendation or preferential construction project , product and serving,attract a customer thereby , expand the customer group. the tradition website news supervisor mode has two kinds , one is static state html page of face, requires that corresponding interlinkage , this way making page of face again and then uploading page of face and modification does not already multipurpose because of efficiency is very low when renewing information. two is owing to the asp and script language , combine development web page data base, by handling news coming application, this is at present comparatively popular method of work.make use of asp technological development website news announce management system, the development having realized website news manages, the administration being able to be used to information is especially timely, high-effect, have improved availability.and the main body of a book is started mainly from the basic concept introducing online news announces, the function and structure having introduced online news announce detailedly systematically, have expounded and proven the systematic design plan of online news announce, brief relevance technologies such as having introduced exploitation implement asp being put into use and having related that to,and development order has introduced systems analysis detailedly , system has designed that with online news announce subsystem, system be put into effect function and part interface realized by the subsystem having developed process, and then, having shown; while introducing some key technologies, have returned to out key source procedure code. finally, systematic deficiency and i have carried out a summary on in cognition and impressions in developing.keywords: access data base; news announce news manages; asp目 录第一章 绪 论11.1 研究背景11.2 研究需要解决的主要问题11.3 研究开发的目的和意义2第二章 相关技术32.1 asp技术介绍32.2 ado技术介绍52.3 microsoft access 2003 介绍52.4 vbscript介绍72.5 javascript介绍72.6 数据库的发展82.6.1 数据库的特点92.6.2 数据库技术102.7 数据库理论基础112.7.1 数据库模型112.7.2 数据库体系结构122.7.3 数据的独立性132.7.4 范式13第三章 系统分析153.1 可行性分析153.2 需求分析153.2.1 功能需求153.2.2 性能需求15第四章 总体设计174.1 软件的运行环境设计174.2 系统模块设计174.3 数据库设计184.3.1数据库需求分析184.3.2数据库概念结构设计194.3.3数据库逻辑结构设计21第五章 详细设计与系统实现245.1 数据库的连接设计245.2 新闻列表模块设计265.3 新闻查询模块设计285.4 新闻管理模块设计315.5 新闻类别模块设计325.6 新闻添加/修改模块设计345.8 新闻显示模块设计385.9 用户评论模块设计39第六章 系统测试41第七章 结束语42参考文献43致 谢44第一章 绪 论本章从现代新闻管理发布系统的研究背景入手,阐述了本系统研究所要解决的用题,介绍了本系统研究的意义,为系统的开发指明的方向。1.1 研究背景 随着网络技术的发展,越来越多的信息通过网络这个独特的媒体进行传播。同时网络还与广告,电视,报纸,招贴媒体并列的地位,越来越吸引人们的注意,网络尤其是国际互联网已经在我们面前展开了一个更加缤纷多彩的世界。网络新闻,也成为人们了解最新国内,国外最新动态,深受人们欢迎,速度快,随时更新内容,远程修改等特点。使得网络中所拥有的巨大信息资源听令于世界上每个角落的使用者。人类之间相互交流不在有国界,地域之别,并开创了一个全新的信息时代,全球资源共享,使得足不出户而知天下大事。二十一世纪是一个信息大爆炸的时代,人们对信息获取的要求是更快、更准确,而伴随着计算机的普及,通过网络来阅读新闻获取信息已经成为很多人日常生活的一部分。以前人们获取新闻信息都是从报纸和电视上获得,人们不可能实现互动,不能看到别人对一种问题的看法,信息的获取比较的单方面。但随着网络技术的发展,现在几乎所有的网站都开设有自己的新闻专栏,每天都可以及时的向人们提供最新的信息,而网页的浏览者也可以根据自己的爱好,选择自己感性趣的新闻阅读,还可以对自己所看的新闻进行评论,也可以看一别的浏览者观点和看法,实现了多方面信息的获取,满足了人们对信息的要求。在线新闻系统是新闻管理领域中一个比较重要的系统,它在读者与编辑之间搭起了一坐桥梁:读者可以及时进行在线注册,在线登陆,修改个人资料,新闻浏览,在线测试等操作。而编辑可以进行在线注册,在线登陆,修改个人资料,新闻管理,新闻管理等操作。本系统采用b/s模式开发,用于实现一些网站新闻发布单元的新闻管理。采用b/s模式的优势在于系统简单、功能强大、扩展能力良好及跨地域的操作性能。1.2 研究需要解决的主要问题网站新闻管理方式一般有两种:一是静态html页面,即一个网页中的内容都是静态文本。更新信息时需要重新制作页面然后上传页面并修改相应链接。随着 internet的进一步发展,静态 web站点的开发与维护变得越来越困难,一方面信息的不断增加和变化使站点维护人员不得不经常修改网页,特别是基于数据库驱动的web站点更是如此,html显得越来越难以胜任;另一方面由于静态网页不能与浏览者进行有效交互 ,使人们感到越来越乏味,而不愿意再一次地进入同一站点 ,故这种方式因为效率太低已不多用。二是基于 asp和脚本语言,将动态网页和数据库结合 ,通过应用程序来处理新闻,这是目前较为流行的做法。基于asp技术的新闻发布管理系统可以根据新闻的标题、内容、图片来自动生成相应的网页,从而简化新闻的发布和管理,提高工作效率。本文讲述的就是一个新闻发布管理系统的实现过程。1.3 研究开发的目的和意义将动态网页与数据库技术结合是目前一些网站提高办公效率和机构精简改革趋势的一个要求。采用asp技术的新闻管理发布系统不仅可以实现新闻的管理和发布远程操作,提高工作效率,而且也可以使工作人员的办公更加轻松自如,同时可以使新闻的发布更加快速、准确。科学管理与信息技术相结合成为提高工作效率和管理水平的主要方式。因此网络化的新闻发布和管理系统建设已经成为提高一个网站信息处理能力的重要方面,网络化的新闻发布和管理系统已经被许多网站采用,提高了信息处理的速度。为了适应信息服务业的飞速发展,提高和扩大信息资源的处理能力,让人们能够方便快捷的了解自己想知道的事情,将动态网页和数据库结合 ,通过应用程序来处理新闻的技术,必会成为网站新闻管理的主流技术。第二章 相关技术本章主要介绍了在开发本系统时所用到一此相关的技术,比如asp和vbscript技术,着重介绍了数据库和数据库技术,并且讲述了系统和数据库连接所用的ado技术的应用。2.1 asp技术介绍asp 全称为 active server pages(动态服务器主页),它是一种应用程序环境,可以利用 vbscript 或 java script 语言来设计,主要用于网络数据库的查询与管理。其工作原理是当浏览者发出浏览请求的时候,服务器会自动将 asp 的程序码,解释为标准 html 格式的网页内容,再送到浏览者浏览器上显示出来。我们也可以将 asp 理解为一种特殊的 cgi。利用 asp 生成的网页,与html相比具有更大的灵活性。只要结构合理,一个 asp 页面就可以取代成千上万个网页。尽管 asp 在工作效率方面较之一些新技术要差,但胜在简单、直观、易学,是涉足网络编程的一条捷径。它具备一个服务器端的脚本执行环境,用它可产生和执行动态的、交互的、高性能的web服务器应用程序。asp应用程序以.asp文件的形式存盘无需经过任何的编译,便能有浏览器查看,当然不能直接运行,只有在服务器执行后才能浏览。asp程序的控制部分是使用vbscript、jscript等脚本语言来设计,当执行asp程序时脚本程序将一整套命令发送给脚本编辑器(即脚本引擎),由脚本解释器进行翻译并将其转换成服务器所能执行的命令。当然,同其他编译语言一样,asp程序的编写也遵循一定的规则,如果想使用自己所喜爱的脚本语言编写asp程序,那么服务器上需要有能解释这种脚本语言的脚本解释器。当安装asp时,系统提供了vbscript和jscript两种脚本语言,而vbscript则被作为系统默认的脚本语言,也可根据自己的喜好改变系统默认的脚本语言。active server的另一大优点是代码的安全性。页面的访问者所能看到的只是服务器方的处理结果。asp文件可以用常规的文本编辑器编辑, asp使用vbscript、javascript等脚本语言作为开发工具,镶嵌于html文本中,使用将asp的程序包含起来。当用户从浏览器向web服务器提出请求时,web服务器会自动将asp的程序解释为标准的html格式的主页内容,用户端只要使用常规可执行html程序的浏览器,就可浏览asp所设计的主页内容,因此与浏览器无关,并且保证了asp的源程序代码不会外漏。asp中包括五个内置的activex服务器组件和五个内置的对象:database access component(数据库访问组件)、file access component(文件访问组件)、ad rotator component(广告轮播器组件)、content linking component(内容链接组件)、browser capabilities component(浏览器信组件)以及request(请求对象)、server(服务器对象)、session(会话对象)、response(响应对象)、application(应用程序对象)。在所有asp组件中,最有用的是数据库访问组件,也称为activex数据对象或ado。在站点发布数据库将使用这个组件及其中包含的对象,以完成对odbc数据源的读写。此外,asp技术的另一个重要特点是,程序员可以利用java、visual basic、 visual c+等语言制作适应自己特殊需要的activex服务器组件来扩充asp的功能,使自己的动态网页几乎具有无限的扩充能力,这是传统的cgi程序所不及的。总而言之asp具有学习快、设计快的特点,不需花许多时间即可学会和快速设计出web应用程序。asp的源程序码在服务器端执行,代码保密性好。集成在html中,无需编译链接可直接执行,而且使用文本编辑器即可设计。在网站系统的开发应用中,microsoft公司的asp(active server pages)被广为使用。asp实际上是将标准的html文件拓展了一些附加特征,为编写人员提供了在服务器端运行脚本的环境,使编写人员可以利用vbscript和javascript或其他的第三方脚本语言来创建asp,实现了过去需要编写复杂的cgi程序才能实现的有动态内容的网页,如计数器等。asp提供了一些内置对象和组件,允许用户从浏览器中接收和发送信息。asp可以和诸如sql server和microsoft access2000这样的数据库进行连接,进而完成数据的交换与更新。1. asp的特点:asp可以和html或其它脚本语言(vbscript,javascript)相互嵌套。asp是一种在web服务器端运行的脚本语言,程序代码安全保密。asp以对象为基础,因此可以使用activex控件继续扩充其功能。asp内置ado组件,因此可以轻松的存取各种数据库。asp可以将运行结果以html的格式传送至客户端浏览器,因而可以适用各种浏览器。2. asp环境的安装与配置asp程序必须在支持asp的web服务器上才能运行,对于个人用户,可以首先将计算机虚拟为web服务器,如果计算机使用的是windows系统,安装微软的pws(personal web server,个人站点服务器)或iis(internet information server,互联网信息服务器)就可以实现这一目标。(1)对硬件的要求其实,一台能够运行windows 98 操作系统(推荐使用windows 2000/xp)的计算机,内存在16mb以上(windows 2000/xp要求64mb以上),可用的硬盘空间在100mb以上,就能满足安装pws或iis的要求,实际上,目前绝大多数计算机早已经超过了这个要求。(2)对软件的要求根据操作系统的不同,使用的web服务器软件也有所不同,具体配置如表面2-1所示。表2-1 web服务器软件操作系统web服务器软件windows 95/98/mepws 4.0windowsntworkstationpws4.0(fornt4.0workstation)windows nt serveriis 4.0windows 2000/xpiis 5.0需要说明的是,虽然配置运行asp的操作系统和服务器软件的选择很多,但是考虑到网站的安全稳定性,在这里推荐使用windows 2000/xp+iis 5.0。2.2 ado技术介绍ado(activex data objects)是由微软公司推出的以activex技术为基础的数据存取方法。ado的主要特点是使用更加容易,访问速度更快,而对磁盘和存储容量的要求更小;ado支持建立各种客户/服务器模式与基于web的应用程序,具有远程数据服务rds(remotedataservice)的特性,通过rds能够在一次往返中将服务器端的数据传送到客户端的应用程序或web页面中,并在客户端对数据进行处理后,立即更新服务器端的数据。ado通过activex脚本可以方便的建立数据库与任何odbc数据源的连接或者数据库的连接。ado工作原理对于异种数据库的访问,首先需要一个简单而统一的应用程序接口(api),应用程序通过它访问和修改各种各样的数据。典型的数据源是支持odbc(open data base connectivity)标准的关系型数据库,通过一系列sql命令进行数据操作。ado定义一个设计原型,其中概括了一系列进行数据存取和更新所必须的行为说明。设计原型表示了一个对象模型,包括实现原型所对应的对象集,定义进行数据操作的对象方法,表示数据或对象方法行为控制的属性等。与对象相关的事件说明了将要发生或已经发生的数据操作过程。组件中提供了一组强有力的数据库操作命令让你容易地操纵数据以产生数据驱动的web页面。根据本系统的情况,数据库连接是采用ado技术并利用dsn来连接数据库的。2.3 microsoft access 2003 介绍access 2003是 microsoft ofiice 2003系列办公软件之一,access成为世界上最流行的桌面数据库系统。access与许多优秀的关系数据库一样,可以让你很容易地连接相关的信息而且还对其他的数据库系统有所补充。它能操作其他来源的资料,包括许多流行的pc数据库程序(如dbase,paradox,microsoft foxpro)的服务器、小型机、大型机上的许多aql数据库。access还完全支持microsoft 的ole技术。在access 的操作对于数据库整合而言,提供了相当强的解决方案,并且将所有的数据库组件整合在单一的文件中,其中包括表、查询、窗体、模块、报表等。access 2003采用客户机/服务器的计算模型,即中央服务器用来存放数据库,该服务器右以被除数多台客户机访问,数据库应用地处理过和分布在客户机和服务器上。客户机/服务器计算模型分为两层地客户/服务器结构和多层地客户/服务器结构。在两层的客户/服务器系统中,客户机通过网络与运行access实例的服务器相连,客户机用来完成数据表示和大部分业务逻辑的实现,服务器完成数据的存储。在多层的客户/服务器系统中,应至少要经过三个处理层,第一层是客户机,但它中是负责数据表示;第二层是业务逻辑服务器,负责业务逻辑的实现,所有客户机都可以对它进行访问;第三层是数据库。access还提供windows操作系统的高级应用程序开发系统。access与其他的数据库开发系统之间相当显著的区别就是:你不用写一行代码,就可以很短的时间内开发出一个功能强大的而且相当专业的数据库应用程序,并且这一过程是完全可视的。如果你能给他加上简短的vba代码,那么所开发出来决不比专业程序员开发的差多少。access将所有有名字的东西都看成对像(object),在access 2003中,最重要的对像有表、查询、窗体、报表、宏和模块。表(table)是数据库的基本对象,是创建其他五种对像的基础,它是用户定义的存储资料的对象。每一个表都包含有关某个主体珠信息表包括存储不同种类的资料的字段(列),而记录(行)则收集特定主体实例的所有信息。即表由记录组成,记录由字段组成,表用来存贮数据库的数据,故又称数据表。查询(query)为来自一个或多个表的资料提供定制视图对象。在access 中, 可以利用图形化的实例查询机制(qbe)或通过sql语句来建立查询。你可以在查询中选择、更新、插入或删除资料,也可以用查询来建立新表。即查询可以按索引快速查找需要的记录,按要求筛选记录并能连接若干个表的字段组成新表。窗体(form)窗体是主要的人机接口。大量的操作(几乎所以)都要通过窗体完成。窗体通过运行宏(macor)或visual basic for applicatinns(vba)过程,来响应大量的事件。access2003为我们提供了强大的(同时也是相当方便的向导)来建立标准的windows窗体。既窗体提供了一种方便的浏览、输入及更改数据的窗口。还可以创建子窗体显示相关联的表的内容。窗体也称单表。报表(report)-为格式化、计算、打印选定资料而设计的对象。既报表的功能是将数据库中的数据分类汇总,然后打印出来,以便分析。它是衡量一个优秀的数据库的重要标准(有时甚至是唯一标准)。宏(macro)为了响应已定义的事件,需要让access去执行一个或多个操作,而宏就是对这些操作的结构化的定义对象。它可以让你像堆积木一样建立一个功能强大的程序,而无须写大量的代码。既宏相当于dos中的批处理,用来自动执行一系列操作。access列出了一些常用的操作供用户选择,使用起来十分方便。模块(module)包括用vba编码的定制过程的一个对象。模块提供了独立的动作流捕获错误,而宏做不到。模块能直接响应窗体或报表事件,也可以从应用程序的任何地方别调用。模块的功能与宏类似,但它定义操作比宏更精细和复杂,用户可以根据自己的需要编写程序。模块使用visual basic 编程。而我之所以选用access作为我的数据库其主要原因是,它的移置性比较好,移置后不用做导入等复杂的操作,在演示的时候不容易出问题。其次,考虑到不是用于商业目的,选用小型的数据库就足够了。2.4 vbscript介绍vbscript听起来会让人想到visual basic,不错,它们的确是有关系的,具体地说vbscript是visual basic子集“vba”(visual basic for application)的子集,“vba”是vbscript的父亲。vba是microsoft office suite和其它应用程序的宏编程语言,利用它可以扩展office的功能,如在word可以采用vba来实现word中没有的功能。在web页面中增加vbscript可以实现很多功能,诸如在将数据发送到服务器之前先进行处理和效验,创建新的web内容,甚至编写完全在客户端运行的应用程序,如计算器和游戏使用程序,扩展客户段的使用功能。引入脚本语言的最重要的一点是把开发者带回到了事件驱动的软件开发范围。不是依赖服务器通过http提供应答,vbscript允许应用程序对用户的动作立即做出反应。虽然vbscript是用户系统的健壮的脚本语言,但vbscript是受限的,它不能处理客户机上api调用,不能操作客户机上的文件,也不能拥有文件系统之上的控件。另外,浏览器的安全机制不允许对没有安全标志的activex运行脚本。2.5 javascript介绍javascript是由 netscape公司开发的一种脚本语言(scripting language),或者称为描述语言。在html基础上,使用javascript可以开发交互式web网页。javascript的出现使得网页和用户之间实现了一种实时性的、动态的、交互性的关系,使网页包含更多活跃的元素和更加精彩的内容。 运行用javascript编写的程序需要能支持javascript语言的浏览器。netscape公司 navigator 30以上版本的浏览器都能支持 javascript程序,微软公司 internet explorer 30以上版本的浏览器基本上支持javascript。微软公司还有自己开发的javascript,称为jscript。 javascript和jscript基本上是相同的,只是在一些细节上有出入。 javascript短小精悍, 又是在客户机上执行的,大大提高了网页的浏览速度和交互能力。 同时它又是专门为制作web网页而量身定做的一种简单的编程语言。2.6 数据库的发展数据库处理在信息系统的研究中一直是非常重要的主题,然而,近年来,随着worldwide web (www)的猛增及internet技术的迅速发展,使得数据库技术之时成为最热门技术之一。20世纪5060年代,由于计算技术的发展和成熟,使大量数据的收集、加工、存储和利用成为可能,致使数据成为可能产生经济和社会效益的重要资源;70年代以来,计算机软件和硬件技术的发展,使对大量数据的精细加工,使数据变成信息并加以利用成为可能;当前,由于计算机技术和通信技术的发展,计算机与网络的密切结合,使信息的传播和利用超脱了时空的限制,成为社会发展和进步的极为重要的、可共享的资源。信息的来源大多为利用知识工具对数据的深层加工,科学数据库新积累的数据必须在经过加工后才能升华为有用信息,这将形成科学数据库系统今后的重要发展方向。丰富的数据,完善的加工工具,将为知识创新工程提供支持,这正是基于科学数据库科研环境建设的目的所在。数据库的设计和开发及包括艺术有包括工程。理解用户的需求,然后,把它们转变为有效的数据库设计是一个艺术过程。把设计转变为实际的数据库,并且这些数据库带有功能完备、高效能的应用,是一个工程过程。数据库的目的是帮助人们跟踪事务。经典的数据库应用涉及诸如订单、顾客、工作、员工、学生、电话之类的项,或其它数据量较大、需要密起关注的事务。最近,由于数据库的普及,数据库技术已经被应用到了新的领域,诸如用于internet的数据库或用于公司内联网的数据库。数据库也被越来越多地应用于生成和维护多媒体应用程序上。计算机的数据处理应用,首先要把大量的信息以数据形式存放在存储器中。存储器的容量、存储速率直接影响到数据管理技术的发展。从1956年生产出第一台计算机到现在,存储器的发展,为数据库技术提供了良好的物质基础。使用计算机以后,数据处理的速度和规模,无论是相对于手工方式,还是机械方式,都有无可比拟的优势。通常在数据处理中,计算是比较简单的而数据的管理却比较复杂。数据管理是指数据的收集、整理、组织、存储、维护、检索、传送等操作,这部分操作是数据处理业务的基本环节,而且是任何数据处理业务中必不可少的共有部分。数据管理技术的优劣,将直接影响数据处理的效率。数据管理技术的发展,与硬件(主要是外存)、软件、计算机应用的范围有密切的联系。数据管理技术的发展经过三个阶段:人工管理阶段、文件系统阶段和数据库阶段。人工管理阶段和文件系统阶段都有着相当多的缺陷,诸如数据冗余性,数据不一致性以及数据联系弱等等。也正是由于这些原因,促使人们研究新的数据管理技术,从而产生了数据库技术。20世纪60年代末发生的三件大事,层次模型ims系统的推出、关于网状模型dbtg报告的发表以及关于关系模型论文的连续发表标志着数据管理技术进入数据库阶段。进入70年代以后,数据库技术得到迅速发展,开发了许多有效的产品并投入运行。数据库系统克服了文件系统的缺陷,提供了对数据更高级更有效的管理。当进入数据库阶段后,随着数据管理规模一再扩大,数据量急剧增加,为了提高效率,开始时,人们只是对文件系统加以扩充,在应用文件中建立了许多辅助索引,形成倒排文件系统。但这并不能最终解决问题。在20世纪60年代末,磁盘技术取得重要进展,具有数百兆容量和快速存取的磁盘陆续进入市场,成本也不高,为数据库技术的产生提供了良好的物质条件。2.6.1 数据库的特点1.减少数据的重复(redundancycanbereduced)当在一个非数据库系统当中,每一个应用程序都有属于他们自己的文件,由于无法有系统建立的数据,因此常常会造成存储数据的重复与浪费。例如:在一家公司当中,人事管理程序与工资管理程序或许都会使用到职员与部门的信息或文件,而我们可以运用数据库的方法,把这两个文件整理起来,以减少多余的数据,过度地占用存储空间。2.避免数据的不一致(inconsistencycanavoid)本项的特色,可以说是延伸前项的一个特点,要说明这样的一个现象,我们可以从下面这个实例来看:若是在同一家公司当中,职员甲在策划部门工作,且职员甲的记录同时被存放在数据库的两个地方,而数据库管理系统却没有对这样重要的情况加以控制,当其中一条数据库被修改时,便会造成数据的不一致,但是,对于一个健全的数据库管理系统而言,将会对这样的情况加以控制,但有时并不需要刻意消除这种情形,应当视该数据库的需求与效率来决定。3.数据共享(datashared)对于数据共享的意义,并不是只有针对数据库设计的应用程序,可以使用数据库中的数据,对于其他撰写好的应用程序,同样可以对相同数据库当中的数据进行处理,进而达到数据共享的目的。4.强化数据的标准化(standardcanbeenforced)由数据库管理系统,对数据做出统筹性的管理,对于数据的格式与一些存储上的标准进行控制,如此一来,对于不同的环境的数据交换(datainterchange)上将有很大的帮助,也能提高数据处理的效率。5.实践安全性的管理(securityrestrictioncanbeapplied)通过对数据库完整的权限控制,数据库管理者可以确认所有可供用户存取数据的合法途径渠道,并且可以事先对一些较重要或关键性的数据进行安全检查,以确保数据存取时,能够将任何不当损毁的情形降至最低。6.完整性的维护(integritycanbemaintained)所谓完整性的问题,就是要确认某条数据在数据库当中,是正确无误的。正如2所述,若是无法控制数据的不一致性,便会产生完整性不足的问题,所以,我们会发现,当数据重复性高的时候,数据不完整的情形也会增加,当然,若是数据库的功能完整,将会大大地提高数据完整性,也会增加数据库的维护能力与维护简便性。7.需求冲突会获得平衡(conflictingrequirementscanbebalance)在一个较大型的企业当中,用户不同的需求,往往会造成系统或数据库在设计上的困扰,但是一个合适的数据库系统,可以通过数据库管理员的管理,将会有效地整理各方面的信息,对于一些较重要的应用程序,可以适时地提供较快速的数据存取方法与格式,以平衡多个用户在需求上的冲突。上述七个方面构成了数据库系统的主要特征。2.6.2 数据库技术从文件系统发展到数据库系统是信息处理领域的一个重大变化。在文件系统阶段,人们关注的中心问题是系统功能的设计,因而程序设计处于主导地位,数据只起着服从程序需要的作用。在数据库方式下,信息处理观念已为新体系所取代,数据占据了中心位置。数据结构的设计成为信息系统首先关心的问题,而利用这些数据的应用程序设计则退居到以既定的数据结构为基础的外围地位。目前世界上已有数百万个数据库系统在运行,其应用已经深入到人类社会生活的各个领域,从企业管理、银行业务、资源分配、经济预测一直到信息检索、档案管理、普查统计等。并在通信网络基础上,建立了许多国际性的联机检索系统。我国20世纪90年代初在全国范围内装备了12个以数据库技术为基础的大型计算机系统,这些系分布在邮电、计委、银行、电力、铁路、气象、民航、情报、公安、军事、航天和财税等行业。数据库技术还在不断的发展,并且不断地与其它计算机技术相互渗透。数据库技术与网络通信技术相结合,产生了分布式数据库系统。数据库技术与面向对象技术相结合,产生了面向对象数据库系统。在数据库技术中有四个名词,其概念应该分清。数据库(database,db):db是统一管理的相关数据的集合。db能为各种用户共享,具有最小冗余度,数据间联系密切,而又有较高的数据独立性。数据库管理系统(databasemanagementsystem,dbms):dbms是位于用户与操作系统之间的一层数据管理软件,为用户或应用程序提供访问db的方法,包括db的建立、查询、更新及各种数据控制。dbms总是基于某种数据模型,可以分为层次型、网状型、关系型和面向对象型dbms。数据库系统(databasesystem,dbs):dbs是实现有组织地、动态地存储大量关联数据,方便多用户访问的计算机软件、硬件和数据资源组成的系统,即采用了数据库技术的计算机系统。数据库技术:这是一门研究数据库的结构、存储、管理和使用的软件学科。数据库技术是操作系统的文件系统基础上发展起来的。而dbms本身要在操作系统的支持下才能工作。数据库不仅用到数据结构的知识,而且丰富了数据结构的内容。在关系数据库中要用到集合论、数理逻辑的理论。因此,数据库技术是一门综合性较强的学科。2.7 数据库理论基础 2.7.1 数据库模型从20世纪50年代中期开始,计算机的应用由科学研究部门逐步扩展到企业、行政部门。至60年代,数据处理成为计算机的主要应用。数据库技术作为数据管理技术,是计算机软件领域的一个重要分支,产生于60年代末。现已形成相当规模的理论体系和实用技术。模型是对现实世界的抽象。在数据库技术中,我们用模型的概念描述数据库的结构与语义,对现实世界进行抽象,表示实体类型及实体间联系的模型称为“数据模型”。目前广泛作用的数据模型可分为两种类型。一种是独立于计算机系统的模型,完全不涉及信息在系统中的表示,只是用来描述某个特定组织所关心的信息结构,这类模型称为“概念数据模型”。要领模型用于建立信息世界的数据模型,强调其语义表达功能,应该概念简单、清晰,易于用户理解,它是现实世界的第一层抽象,是用户和数据库设计人员之间进行交流的工具。这一其中著名的模型是“实体联系模型”。另一种数据模型是直接面向数据库的逻辑结构,它是现实世界的第二层抽象。这类模型涉及到计算机系统和数据库管理系统,又称为“结构数据模型”。例如,层次、网状、关系、面向对象等模型。这类模型有严格的形式化定义,以便于在计算机系统中实现。(1) 层次模型。用树型结构表示实体类型及实体间联系的数据模型。树的结点是记录类型,每个非根结点有且只有一个父结点。上一层记录类型和下一层记录类型间联系是1n联系。层次模型的特点是记录之间的联系通过指针实现,查询效率较高。但层次模型有两个缺点:一是只能表示1n联系,虽然有多种辅助手段实现了mn联系,但都较复杂,用户不易掌握,二是由于树型结构层次顺序的严格和复杂,引起数据的查询和更新操作也很复杂,因此,编写应用程序也很复杂。(2) 网状模型。用有向图结构表示实体类型及实体间联系的数据模型。1969年dbtg报告提出的数据模型是网状模型的主要代表。有向图中的结点是记录类型,有向边表示从箭尾一端的记录类型到箭头一端的记录类型间联系是1n联系。网状模型的特点:记录之间联系通过指针实现,mn联系也容易实现(每个mn联系可拆成两个1n联系),查询效率较高。网状模型的缺点是编写应用程序比较复杂,程序员必须熟悉数据库的逻辑结构。由于层次系统和网状系统的应用程序编制比较复杂,因此,从20世纪80年代中期起,其市场已被关系系统所取代。但是使用这两种模型建立起的许多数据库仍然在正常运转,只是在外层加了个关系数据库语言的接口。网状模型有许多成功的产品,20世纪70年代的产品大部分网状系统,例如,honeywell公司的ids/、hp公司的image/3000、burroughs公司的dms、umivac公司的dms1100、cullinet公司的idms、cimcom公司的total等。(3) 关系模型。关系模型的主要是用二维表格结构表达实体集,用外键表示实体间联系。关系模型是由若干个关系模式组成的集合。关系模式相当于前面提到的记录类型,它的实例称为关系,每个关系实际上是一张二维表格。关系模型和层次、网状模型的最大判别是用关键码而不是用指针导航数据,表格简单用户易懂,编程时并不涉及存储结构,访问技术等细节。关系模型是数学化模型。sql语言是关系数据库的标准化语言,已得到了广泛的应用。20世纪70年代对关系数据库的研究主要集中在理论和实验系统的开发方面。80年代初才形成产品,但很快得到广泛的应用和普及,并最终取代了层次、网状数据库产品。现在市场上典型的关系dbms产品有db2、oracle、sybase、informix和微机型产品foxpro、access等。关系模型和网状、层次模型的最大区别是:关系模型用表格数据而不是通过指针链来表示和实现实体间联系。关系模型的数据结构简单、易懂。只需用简单的查询语句就可对数据库进行操作。 关系模型是数学化的模型,可把表格看成一个集合,因此集合论、数理逻辑等知识可引入到关系模型中来。关系模型已是一个成熟的有前途的模型,已得到广泛应用。(4) 面向对象模型。目前,关系数据库的使用已相当普遍,但是,现实世界中仍然存在着许多含有复杂数据结构的应用领域,例如,cad数据、图形数据等,而关系模型在这方面的处理能力就显得力不从心。因此,人们需要更高级的数据库技术来表达这类信息。面向对象的概念最早出现在程序设计语言中,随后迅速渗透到计算机领域的每一个分支。面向对象数据库是面向对象概念与数据库技术相结合的产物。面向对象模型能完整地描述现实世界的数据结构,具有丰富的表达能力,但模型相对较复杂,涉及的知识面也广,因此面向对象数据库尚未达到关系数据库那样的普及程度。2.7.2 数据库体系结构数据库的体系结构分三级:内部级(internal),概念级(conceptual)和外部级(external)。这个三级结构有时也称为“三级模式结构”,或“数据抽象的三个级别”,最早是在1971年通过的dbtg报告中提出,后来收入在1975年的美国ansi/sparc报告中。虽然现在dbms的产品多种多样,在不同的操作系统支持下工作,但是大多数系统在总的体系结构上都具有三级模式的结构特征。2.7.3 数据的独立性由于数据库系统采用三级模式结构,因此系统具有数据独立性的特点。在数据库技术中,数据独立性是指应用程序和数据之间相互独立,不受影响。数据独立性分成物理数据独立性和逻辑数据独立性两级。(1)物理数据独立性如果数据库的内模式要进行修改,即数据库的存储设备和存储方法有所变化,那么模式/内模式映象也要进行相当的修改,使概念模式尽可能保持不变。也就是对内模式的修改尽量不影响概念模式,当然,对于外模式和应用程序的影响更小,这样,我们称数据库达到了物理数据独立性。(2)逻辑数据独立性如果数据库的概念模式要进行修改,譬如增加记录类型或增加数据项,那么外模式/模式映象也要进行相应的修改,使外模式尽可能保持不变。也就是对概念模式的修改尽量不影响外模式和应用程序

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论