(精品论文)asp博客系统毕业设计论文_第1页
(精品论文)asp博客系统毕业设计论文_第2页
(精品论文)asp博客系统毕业设计论文_第3页
(精品论文)asp博客系统毕业设计论文_第4页
(精品论文)asp博客系统毕业设计论文_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

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

文档简介

大连交通大学2007届本科生毕业设计(论文)摘 要随着Internet的广泛应用,动态网页技术也应运而生。本文介绍了应用ASP动态网页技术开发博客系统的设计与实现。博客系统主要为用户提供发表文章、浏览文章等功能,用户通过Internet可以发表一些自己撰写的文章以和其他网友进行交流。博客系统主要实现了文章管理的数字化、信息化、智能化,是打破传统报刊、杂志发表文章方式的新尝试。 本系统的开发设计实现采用ASP技术,系统后台使用Microsoft的Access 2000数据库,并通过使用ODBC技术访问。本文对博客系统进行整体分析,明确了系统的可行性和用户需求;根据模块化原理,规划设计了系统功能模块;在数据库设计部分,详细说明了系统数据库的结构和数据库的完整性、安全性措施;程序设计则采用面向对象的程序设计思想,提出系统的程序设计思路,对前台与后台功能的程序实现进行了详细论述;系统测试部分,具体分析测试过程中出现的主要问题,并提出了解决方案,实现系统功能。最后,对系统作以客观、全面的评价,并对进一步改进提出了建议。关键字:博客ASP Access 2000 ODBCABSTRACTWith the extensive application of the Internet, dynamic web technology has emerged. This text describes the application of ASP dynamic web technology and development the blog system.Blog system is mainly to provide users with published articles, browse articles, and other functions,Users can express themselves by some articles and with other netizens to conduct exchanges. Blog system of the main article on the digital management, information, intelligence, is to break the way of Released an article by traditional newspapers and magazine published ,it make a new way to try.The system is designed by ASP technology, backstage adoption Access 2000 database,and use the ODBC technology to visit.In this text,it analysis the blog system by feasibility and the demand of the user. Under the modular theory, planning and design of the system functional modules; In the database design, a detailed description of the database structure and database integrity, security measures; Programming is used object-oriented programming design, system design ideas, background for the future and function of the program in detail; System testing, Analysis of the specific course of testing the key issues and proposed solutions to achieve system function. Finally, the system in an objective, comprehensive evaluation, as well as further improvements made. Key words: blog ASP Access 2000 ODBC目 录第一章系统概述11.1项目背景11.2 系统开发的意义21.2.1发布想法21.2.2博客的用途21.3 系统开发的目标21.3.1任何拥有博客的人都可以做到21.3.2 访问博客系统的人,可以做到31.4系统概述31.5 系统的开发方法3第二章 系统分析62.1 可行性分析62.2 需求分析62.2.1 管理员登录62.2.2 文章管理72.2.3 系统信息管理72.3 系统的主要技术分析72.3.1 ASP技术概论72.3.2 ASP工作原理82.3.3 ODBC技术82.3.4 硬件设备及操作系统92.3.5 系统开发平台92.4 数据分析92.5 数据流图9第三章 数据库设计113.1 数据库技术概述113.2 数据库选择113.3 数据库的概念结构设计133.3.1 实体与属性之间的关系133.3.2 数据库的E-R图133.4 数据库逻辑结构设计153.5 数据库的完整性和安全性163.5.1 数据库的完整性约束163.5.2 数据库的安全性17第四章 系统设计184.1系统总体设计184.2公用模块的编写194.2.1数据库连接文件194.2.2用户登录和注销194.2.3地址栏和博客主题设置194.3客户界面的设计与实现194.3.1 界面头设计194.3.2 界面尾设计204.3.3 首页设计与实现204.3.4用户注册模块设计214.3.5给我留言模块224.3.6“文章评论”功能模块设计224.4后台管理界面设计224.4.1“添加分类”功能模块224.4.2“分类管理”功能模块234.4.3“添加文章”功能模块234.4.4“文章管理”功能模块244.4.5“留言管理”功能模块244.4.6“基本设置”功能模块254.4.7管理员密码模块254.4.8系统管理模块26第五章 系统测试275.1 测试目的275.2 测试方法275.3 测试实例275.3.1 后台管理权限测试275.3.2 前台文章显示测试275.3.3 前台显示文章详细内容测试285.3.4 管理员登陆285.3.5 后台管理权限测试285.3.6 文章管理295.3.7 系统信息管理31结 论32谢 辞33参考文献34附 录35附录一 软件使用说明书35附录二 源代码36 第一章 系统概述1.1 项目背景Blog,是Weblog的简称。Weblog,其实是Web和Log的组合词。Web,指World Wide Web,当然是指互连网了;Log的原义则是“航海日志”,后指任何类型的流水记录。合在一起来理解,Weblog就是在网络上的一种流水记录形式或者简称“网络日志”。Blogger或Weblogger,是指习惯于日常记录并使用Weblog工具的人。虽然在大陆早些时候或者台湾等地,对此概念的译名不尽相同(有的称为“网志”,有的称之为“网录”等等),但目前已基本统一到“博客”一词上来。该词最早是在2002年8月8日由著名的网络评论家王俊秀和方兴东共同撰文提出来的。博客也好,网志也罢,仅仅是一种名称而已,它的本义还是逃不过Weblog的范围。只是,通常我们所说的“博客”,既可用作名词Blogger或weblogger指具有博客行为的一类人;也可以作动词用(相当于英文中的Weblog或blog),指博客采取的具有博客行为反映、是第三方可以用视觉感受到的行为,即博客们所撰写的Blog。因此,“他/她是一位博客,他/她天天在博客”及“博客博什么客?”在中文语法与逻辑上都是正确。只是不同场合的用法不同罢了。 Blog究竟是什么?说了半天,其实一个Blog就是一个网页,它通常是由简短且经常更新的帖子(Post)所构成,这些张贴的文章都按照年份和日期倒序排列。Blog的内容和目的有很大的不同,Blog的内容和目的有很大的不同,从对其他网站的超级链接和评论,有关公司、个人、构想的新闻到日记、照片、诗歌、散文,甚至科幻小说的发表或张贴都有。许多Blogs记录着blog个人所见、所闻、所想,还有一些Blogs则是一群人基于某个特定主题或共同利益领域的集体创作。撰写这些Weblog或Blog的人就叫做Blogger或Blog writer。 博客存在的方式,一般分为三种类型:一是托管博客,无须自己注册域名、租用空间和编制网页,博客们只要去免费注册申请即可拥有自己的博客空间,是最“多快好省”的方式。如英文的、及多种语言的博客室()等都提供这样的服务;二是自建独立网站的博客,有自己的域名、空间和页面风格,需要一定的条件。如方兴东建立的“博客中国”站();三是附属博客,将自己的博客作为某一个网站的一部分(如一个栏目、一个频道或者一个地址)。这三类之间可以演变,甚至可以兼得,一人拥有多种博客网站。目前进行网站开发的语言很多,如ASP、PHP、JSP、ASP.NET等。究竟应该选择什么语言来开发一个BLOG网站呢,对于一个中小型的网站来说,ASP无疑是最好的选择,利用简单的HTML代码与脚本融合而成的ASP技术可以开发强大的Web应用程序。ASP(Active Sever Pages)是Microsoft推出的一种服务器端脚本环境,ASP内嵌于IIS中,让用户可以轻松的结合HTML Web页面、脚本和ActiveX组件建立或执行动态的、交互的Web服务器应用程序。ASP并不单指某一种编程语言,而是一门把HTML代码与VBScript和JavaScript等脚本语言融合在一起的技术,ASP技术的诞生,应该说是一项成功的技术,它开创了非专业人员开发高水平网站的历史。1.2 系统开发的意义1.2.1发布想法博客能让个人在互联网上表达自己的心声。这是一个收集和共享任何感兴趣的事物的地方-可以是政治评论、个人日记或是指向您想记住的网站的链接。许多人使用博客只是要组织自己的想法,而有些人则在全球成千上万的浏览者中赢得影响力。职业和业余新闻记者使用博客发布特发新闻,而有写日记习惯的人则会在博客 中宣示自己内心的想法。而摄影和美术发烧者,可以通过博客 系统的管理自己的作品,无论您要发表什么意见,博客都可以帮您表达出来。博客作为一种新表达的方式,它的传播不仅情绪,包括大量的智慧、意见和思想。某种意义上说,它也是一种新的文化现象,博客的出现和繁荣,真正凸现网络的知识价值,标志着互联网发展开始步入更高的阶段。1.2.2博客的用途(1)促进学习。写blog可以促进学习,想写出文章来,自然不能是泛泛的了解就可以的,要理解了才能写得出来的。这就促进了对某些领域的不断学习和思考。 (2)记录收获。blog中,常常是记录下来都是瞬间的灵感,对事物的感悟,经过多日思考和实践的结果,对某个问题的解决方案等等,这些都是财富,要记录下来。 (3)反映成长。写blog,可以反映出人的思考过程,而不仅仅是思考结果。对一个问题或领域,从不了解到了解,从了解到熟悉,从熟悉到精通。这纪录了一个人思考和解决问题的成长过程。很久之后,看到自己之前的文章,你将会觉得自己进步了。 (4)结交朋友。写了blog,自然会有许多志趣相同的朋友来阅读,这可以认识许多朋友。大家有共同的兴趣爱好,自然谈得来。 (5)共享知识。blog给大家看,大家的blog也给你看。这个问题我解决了,那个问题他解决了。大家互通有无,建立起一个社群。 (6)交流看法。回复的人对blog的观点或赞同,或反对,大家一起讨论,听听别人的思想,可以促进双方的共同进步。 (7)包装自己。看到一篇篇用心写出的文章,自然是对自己知识技能的最好宣传。 1.3 系统开发的目标1.3.1任何拥有博客的人都可以做到(1)登录博客系统浏览文章(2)管理自己博客的基本信息(3)撰写个人随笔(4)处理留言、文章评论等内容1.3.2 访问博客系统的人,可以做到游览博客系统中的随笔目录、文章目录博客系统中的内容,只有博客管理员登录系统之后,才能进行管理。而博客系统的访问者不需要注册,也不需要登录就可以访问博客系统中的内容。1.4系统概述一个博客其实就是由一序列网页组成的,它通常是由简短且经常更新的帖子所构成的,这些张贴的文章都按照年份和日期倒序列排列,能按照日期和主题检索。博客的内容和目的有很大的不同,有到其他网站的超级链接;有对其他网站的评论;有个人的日记,日常所思所想;有个人照片、诗歌、散文,甚至科幻小说的发表。正是由于博客能收容这些不拘于个人思想的表达,使博客这种交流和表达方式日益红火起来,博客秉承了个人网站的自由精神,也开拓了激发创造的新模式,能张扬人的个性,从这个意义上说,博客将会变得越来越普及,越来越为更多的人接受。本系统主要完成以下功能。1客户界面部分我的文章给我留言用户注册/登录首页:文章分类,最新评论,最新文章,最新加入2管理界面部分添加分类分类管理文章管理留言管理基本设置1.5 系统的开发方法本系统主要采用ASP技术进行开发,ASP是服务器端的脚本执行环境,可用来产生和执行动态的高性能的WEB服务器程序。 当用户使用浏览器请求ASP主页时,WEB服务器响应,调用ASP引擎来执行ASP文件,并解释其中的脚本语言(JScript 或VBScript),通过ODBC连接数据库,由数据库访问组件ADO(ActiveX Data Objects)完成数据库操作,最后ASP生成包含有数据查询结果的HTML主页返回用户端显示。 由于ASP在服务器端运行,运行结果以HTML主页形式返回用户浏览器,因而ASP源程序不会泄密,增加了系统的安全保密性。此外,ASP是面向对象的脚本环境,用户可自行增加ActiveX组件来扩充其功能,拓展应用范围。本系统的前台开发采用Dreamweaver,Dreamweaver是美国MACROMEDIA公司开发的集网页制作和管理网站于一身的所见即所得网页编辑器,它是第一套针对专业网页设计师特别发展的视觉化网页开发工具,利用它可以轻而易举地制作出跨越平台限制和跨越浏览器限制的充满动感的网页。Dreamweaver特点: 1最佳的制作效率 Dreamweaver可以用最快速的方式将Fireworks,FreeHand,或Photoshop等档案移至网页上。使用检色吸管工具选择荧幕上的颜色可设定最接近的网页安全色。对于选单,快捷键与格式控制,都只要一个简单步骤便可完成。Dremweaver能与您喜爱的设计工具,如Playback Flash,Shockwave和外挂模组等搭配,不需离开Dremweaver便可完成,整体运用流程自然顺畅。除此之外,只要单击便可使Dreamweaver自动开启Firework或Photoshop来进行编辑与设定图档的最佳化。 2网站管理 使用网站地图可以快速制作网站雏形、设计、更新和重组网页。改变网页位置或档案名称,Dreamweaver 会自动更新所有连结。使用支援文字、HTML码、HTML属性标签和一般语法的搜寻及置换功能使得复杂的网站更新变得迅速又简单。3无可比拟的控制能力 Dreamweaver是唯一提供Roundtrip HTML、视觉化编辑与原始码编辑同步的设计工具。它包含HomeSite和BBEdit等主流文字编辑器。帧(frames)和表格的制作速度快的令您无法想像。进阶表格编辑功能使您简单的选择单格、行、栏或作未连续之选取。甚至可以排序或格式化表格群组,Dreamweaver 支援精准定位,利用可轻易转换成表格的图层以拖拉置放的方式进行版面配置。所见即所得 Dreamweaver成功整合动态式出版视觉编辑及电子商务功能,提供超强的支援能力给Third-party厂商,包含ASP, Apache,BroadVision, Cold Fusion,iCAT, Tango与自行发展的应用软体。当您正使用Dreamweaver在设计动态网页时,所见即所得的功能,让您不需要透过浏览器就能预览网页。梦幻样版和XML Dreamweaver将内容与设计分开,应用于快速网页更新和团队合作网页编辑。建立网页外观的样版,指定可编辑或不可编辑的部份,内容提供者可直接编辑以样式为主的内容却不会不小心改变既定之样式。您也可以使用样版正确地输入或输出XML内容。 全方位的呈现利用Dreamweaver设计的网页,可以全方位的呈现在任何平台的热门浏览器上。对于cascading style sheets的动态HTML支援和鼠标换图效果,声音和动画的DHTML效果资料库可在Netscape和Microsoft浏览器上执行。使用不同浏览器检示功能,Dreamweaver可以告知您在不同浏览器上执行的成效如何。当有新的浏览器上市时,只要从Dreamweaver的网站在下载它的描述档,便可得知详尽的成效报告。本系统的后台数据库采用Access 2000, Access 2000一个最突出的功能就是将Access数据库中的数据动态地提供给Web页。 Access2000另一个突出的优点就是使用起来特别简单,就和你使用“窗体”一样,非常的简单。而且这种联接是动态的,不需要创建很多的页面,一切繁琐的工作Access都自己包了。掌握这个对象的用法,以后往Internet发布数据就更加得心应手了。36第二章 系统分析2.1 可行性分析可行性分析(Feasibility Analysis)也称为可行性研究,是在系统调查的基础上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。为了确定开发具有可行性,对本系统主要进行了以下四个方面的分析。(1) 经济可行性。经济可行性主要是对项目的经济效益进行评价。本系统对系统开发者来说并不需要太高的成本支出,只是对系统的管理者付出管理报酬即可,而且开发周期不需要太长,节省了人力、物力、财力资源,所以本系统在经济上是可行的。(2) 技术上的可行性。技术上的可行性分析主要是分析技术条件能否顺利完成开发工作,硬、软件能否满足开发者的需要等。在软件方面,本系统采用的是ASP(Active Sever Pages)进行开发,前台网页设计使用的是Dreamweaver MX,而数据库系统采用的是Microsoft Access 2000。通过分析,在软、硬件方面现有工具与环境完全可以实现系统的开发,因此具有技术上的可行性。(3) 时机可行性。时机可行性是分析系统开发时机是否成熟。目前越来越多的应用程序都已经是转向基于Web的开发,并且Internet已经广泛使用,因此系统的设计具有时机可行性。(4) 管理上的可行性:主要是管理人员是否支持,现有的管理制度和方法是否科学,规章制度是否齐全,原始数据是否正确等。系统的开发主要就是为了方便校友信息的管理,补充现在传统管理方式的不足,因此具备了管理上的可行性。 综上所述,本系统开发目标已明确,在技术和经济等方面具备可行性,并且投入少、见效快,因此系统的开发是完全可行的。2.2 需求分析在可行性分析阶段已经简要地分析和研究了本系统的基本需求,也论证了开发平台及软件的可行性,但为了明确系统设计的目标,了解用户的需求,现对用户需求作以调研,从而进一步明确了设计所实现子系统的功能。2.2.1 管理员登录在调研中了解到,用户想要使用系统,首先要有一个友好的用户注册界面,其次,用户需要经历登录验证过程,只有合法的拥有管理员身份的用户才可以使用系统中的管理功能,这样做可以防止非法用户登录并使用本系统,妨害数据安全。用户登录。通过系统登录验证,用户成功进入系统并开始使用其中功能。2.2.2 文章管理文章管理是用户所有文章的信息,用户可以进入此处进行相关文章的管理。这部分主要包括以下方面:(1) 文章信息显示。显示出所有文章的大概信息。(2) 发表新文章。可以发表新的文章,以供网友浏览。(3) 修改文章。可以修改已有的文章的内容。(4) 删除文章。允许用户对文章信息进行删除操作。2.2.3 系统信息管理系统开始运行之后,随着时间的变化会有想要更改系统的相关信息的要求,比如:修改博客的标题、联系的Email地址,因此需要提供信息修改的功能。同时,为了保证数据使用系统的安全性,管理员也应该经常修改登录密码信息。2.3 系统的主要技术分析2.3.1 ASP技术概论Microsoft Active Server Pages 即我们所称的ASP,其实是一套微软开发的服务器端脚本环境,ASP内含于IIS3.0和4.0之中,通过ASP我们可以结合HTML网页、ASP指令和ActiveX元件建立动态、交互且高效的WEB服务器应用程序。有了ASP你就不必担心客户的浏览器是否能运行你所编写的代码,因为所有的程序都将在服务器端执行,包括所有嵌在普通HTML中的脚本程序。当程序执行完毕后,服务器仅将执行的结果返回给客户浏览器,这样也就减轻了客户端浏览器的负担,大大提高了交互的速度。以下罗列了Active Server Pages 所独具的一些特点:1.使用VBScript、JScript等简单易懂的脚本语言,结合HTML代码,即可快速地完成网站的应用程序。 2.无须compile编译,容易编写,可在服务器端直接执行。 3.使用普通的文本编辑器,如Windows的记事本,即可进行编辑设计。 4.与浏览器无关(Browser Independence),用户端只要使用可执行HTML码的浏览器,即可浏览Active Server Pages所设计的网页内容。Active Server Pages所使用的脚本语言(VBScript 、Jscript)均在WEB服务器端执行,用户端的浏览器不需要能够执行这些脚本语言。 5.Active Server Pages能与任何ActiveX scripting语言相容。除了可使用VBScript或JScript语言来设计外,还通过plug-in的方式,使用由第三方所提供的其他脚本语言,譬如REXX、Perl、Tcl等。脚本引擎是处理脚本程序的COM(Component Object Model)物件。 6.Active Server Pages的源程序,不会被传到客户浏览器,因而可以避免所写的源程序被他人剽窃,也提高了程序的安全性。 7.可使用服务器端的脚本来产生客户端的脚本。 8.物件导向(Object-oriented)。 9.ActiveX Server Components(ActiveX服务器元件)具有无限可扩充性。可以使用Visual Basic 、Java 、Visual C+ 、COBOL等编程语言来编写你所需要的ActiveX Server Component。2.3.2 ASP工作原理ASP的执行过程(1)用户在浏览器的地址栏中键入ASP文件,并回车触发这个ASP的申请。(2)浏览器将这个ASP的请求发送到给Web服务器。(3)Web Server接收这些申请并根据.asp的后缀名判断这是ASP要求。(4)Web Server 从硬盘或内存中读取正确的ASP文件。(5)Web Server 将这个文件发送到ASP.DLL的特定文件中。(6)ASP文件将会从头至尾执行并根据命令要求生成相应的HTML文件。(7)HTML文件被送回浏览器。(8)用户的浏览器解释这些HTML文件并将结果显示出来。 图2-1 ASP工作原理2.3.3 ODBC技术ODBC的基本思想是为用户提供简单、标准、透明的数据库连接的公共编程接口,开发厂商根据ODBC的标准去实现底层的驱动程序,这个驱动对用户是透明的,并允许根据不同的DBMS采用不同的技术加以优化实现,这就利于不断吸收新的技术而趋完善。这同时也就是数据库驱动的思想,它很类似于Windows中打印驱动的思想。在Windows中,用户安装不同的打印驱动程序,使用同样一条打印语句或操作,就可很容易地实现在不同打印机上打印输出,而不需要了解内部的具体原理。ODBC出现以后,用户安装不同的DBMS驱动就可用同样的SQL语句实现在不同DBMS上进行同样的操作,而且无需预编译。ODBC带来了数据库连接方式的变革,如图1所示。在传统方式中,开发人员要熟悉多个DBMS及其API,一旦DBMS端出现变动,则往往导致用户端系统重新编建或者源代码的修改,这给开发和维护工作带来了很大困难。在ODBC方式中,不管底层网络环境如何,也无论采用何种DBMS,用户在程序中都使用同一套标准代码,无需逐个了解各DBMS及其API的特点,源程序不因底层的变化而重新编建或修改,从而减轻了开发维护的工作量,缩短了开发周期。ODBC具有以下灵活的特点:1. 使用户程序有很高的互操作性,相同的目标代码适用于不同的DBMS;2. 由于ODBC的开放性,它为程序集成提供了便利,为客户机/服务器结构提供了技术支持;2.3.4 硬件设备及操作系统为了满足系统开发设计的需要,表2.1为实现系统设计开发对硬件要求的最低配置,建议使用当前中等或以上计算机配置。表2-1 硬件要求配置表CPU要求在P以上内存256MB及其以上硬盘20GB及其以上光驱无要求软驱无要求显示器无要求其他计算机设备网卡等联网设备2.3.5 系统开发平台电脑配置:HP电脑 CPU:P4 2.93 内存:512M 硬盘:160G操作系统:Microsoft Windows XP中文版数据库:Microsoft Access 20002.4 数据分析博客系统中,主要是管理用户的文章、留言、系统信息等数据。数据的类型决定了程序对数据的处理方式也就是算法,因此,数据是系统实现分析的起点。现通过数据流图的方式分析系统中数据的流动和处理。对系统的管理员,在登录系统后,本系统接受管理员的修改、添加、删除请求,通过分析将这种请求转化成相应的SQL语句执行对数据库的相关的操作,并将执行的相应结果送回系统中。系统接收到数据库返回的结果集,经过一定的分析处理,将其转化成ASP页面,返回到客户端显示给用户。2.5 数据流图系统运行过程中,主要涉及到两部分的数据流向,一部分是管理员在系统后台管理界面上发出的对数据库操作的数据流,另一部分是用户在应用前台使用系统时所产生的数据流。管理员用户登录信息修改操作增加操作相应结果返回Blog系统服务器浏览者提供数据浏览请求图2-2 博客系统总体图对于每一个管理,可以细分为添加、修改、删除、浏览等操作,现以文章管理为例,其具体细节图如图2.4所示。图2-3 文章管理细节图大连交通大学2007届生毕业设计论文第三章 数据库设计3.1 数据库技术概述数据库(Database),是按照数据结构来组织、存储和管理数据的仓库,是用于查询的大量数据的存储区域。使用数据库可以带来许多好处:如减少了数据的冗余度,从而大大地节省了数据的存储空间,实现数据资源的充分共享等等。近年来推出的计算机关系数据库管理系统,还具有操作直观,使用灵活,编程方便,功能强大,环境适应广泛,数据处理能力极强等诸多优点。总的来说,数据库的设计对系统的经济性、功能性和效率有很大的影响,一个好的数据库,要求在设计时尽量避免数据的多余,另外,还要尽可能提高数据的存取速度。数据库设计时速度与空间在范式上是相互矛盾的。一方面按规范化理论的要求,关系模式应尽量取高级范式,尤其对记录数较多的关系,低级范式将会造成存储的大量重复,是空间遭受严重浪费;另一方面从存取速度上考虑,应该尽量做到一个模式涉及的属性越多越好,相互运算越少越好,这样,又应取低级范式。因此我们在设计数据库时要严格地探讨它的使用环境,充分了解用户的需求,清楚地掌握数据库系统的特点。经过综合的评价和分析后设计出的数据库应满足以下要求:(1) 数据库信息要能充分体现出用户使用系统的需求。 (2) 能够支持用户对数据进行的所有处理。(3) 能够容易被数据库管理系统运行维护。(4) 数据一致性、完整性好,无更新异常。3.2 数据库选择本系统所采用的数据库是Access 2000Access 数据库管理系统是Microsoft Office 套件的重要组成部分,是Access的最新版本,可在Windows 95环境下运行。Access适用于小型商务活动,用以存贮和管理商务活动所需要的数据。Access不仅是一个数据库,而且它具有强大的数据管理功能,它可以方便地利用各种数据源,生成窗体(表单),查询,报表和应用程序等。数据库是有结构的数据集合,它与一般的数据文件不同,(其中的数据是无结构的)是一串文字或数字流。数据库中的数据可以是文字、图象、声音等。 Microsoft Access是一种关系式数据库,关系式数据库由一系列表组成,表又由一系列行和列组成,每一行是一个记录,每一列是一个字段,每个字段有一个字段名,字段名在一个表中不能重复。表与表之间可以建立关系(或称关联,连接),以便查询相关联的信息。Access数据库以文件形式保存,文件的扩展名是MDB。Access 的6种对象:Access 数据库由六种对象组成,它们是表、查询、窗体、报表、宏和模块。 表(Table) 表是数据库的基本对象,是创建其他5种对象的基础。表由记录组成,记录由字段组成,表用来存贮数据库的数据,故又称数据表。 查询(Query)查询可以按索引快速查找到需要的记录,按要求筛选记录并能连接若干个表的字段组成新表。 窗体(Form)窗体提供了一种方便的浏览、输入及更改数据的窗口。还可以创建子窗体显示相关联的表的内容。窗体也称表单。 报表(Report)报表的功能是将数据库中的数据分类汇总,然后打印出来,以便分析。 宏(Macro)宏相当于DOS中的批处理,用来自动执行一系列操作。Access列出了一些常用的操作供用户选择,使用起来十分方便。 模块(Module)模块的功能与宏类似,但它定义的操作比宏更精细和复杂,用户可以根据自己的需要编写程序。Access是一种关系型数据库管理系统,其主要特点如下: (1)存储方式单一 Access管理的对象有表、查询、窗体、报表、页、宏和模块,以上对象都存放在后缀为(.mdb)的数据库文件种,便于用户的操作和管理。 (2)面向对象 Access是一个面向对象的开发工具,利用面向对象的方式将数据库系统中的各种功能对象化,将数据库管理的各种功能封装在各类对象中。它将一个应用系统当作是由一系列对象组成的,对每个对象它都定义一组方法和属性,以定义该对象的行为和外国,用户还可以按需要给对象扩展方法和属性。通过对象的方法、属性完成数据库的操作和管理,极大地简化了用户的开发工作。同时,这种基于面向对象的开发方式,使得开发应用程序更为简便。 (3)界面友好、易操作 Access是一个可视化工具,是风格与Windows完全一样,用户想要生成对象并应用,只要使用鼠标进行拖放即可,非常直观方便。系统还提供了表生成器、查询生成器、报表设计器以及数据库向导、表向导、查询向导、窗体向导、报表向导等工具,使得操作简便,容易使用和掌握。 (4)集成环境、处理多种数据信息 Access基于Windows操作系统下的集成开发环境,该环境集成了各种向导和生成器工具,极大地提高了开发人员的工作效率,使得建立数据库、创建表、设计用户界面、设计数据查询、报表打印等可以方便有序地进行。 (5)Access支持ODBC(开发数据库互连,Open Data Base Connectivity),利用Access强大的DDE(动态数据交换)和OLE(对象的联接和嵌入)特性,可以在一个数据表中嵌入位图、声音、Excel表格、Word文档,还可以建立动态的数据库报表和窗体等。Access还可以将程序应用于网络,并与网络上的动态数据相联接。利用数据库访问页对象生成HTML。3.3 数据库的概念结构设计3.3.1 实体与属性之间的关系E-R模型的组成元素有:实体、属性、联系。E-R模型用E-R图表示。实体是用户工作环境中所涉及的事务,属性是对实体特征的描述。(1) 模型中的实体相当于实体集、一个表,而不是单个实体或表中的一行。实体用矩形框表示,实体名称标注在矩形框内。用菱形表示实体间的联系,菱形框内写上联系名,用无向边把菱形分别与有关实体相连接,在无向边旁标上联系的类型。(2) 属性是实体的性质。用椭圆框表示,与实体之间用一条线相连表的主码是关键属性,关键属性项加下划线。(3) 各子系统模块中主键相同的字段之间存在着相互关联的关系。(4) 在程序中实现对它们的完整性和一致性控制。3.3.2 数据库的E-R图(1)博客系统整体E-R图如图3.1所示。公告留言用户博客标题文章评论文章分类1:11:N1:N1:N1:11:1图3-1 博客整体E-R图 (2)博客系统文章实体E-R图如图3.2所示。图3-2 文章资源E-R图(3)图3-3为视图View_Artcle_Type的E-R图。View_Article_Type文章Article文章分类TypeArticle.TypeID=Type. TypeID图 3-3 视图View_Artcle_Type的E-R图(4)图3-4为视图View_Artcle_comment的E-R图。View_Article_com-ment文章Article评论CommentArticle.ContentID=Type. ContentID图3-4视图View_Artcle_comment的E-R图(5)图3-5为视图View_users的E-R图。View_Users用户Users文章ArticleArticle.username=Users.username图3-5视图View_user的E-R图3.4数据库逻辑结构设计数据库的概念结构设计完毕后,现在可以将上面的数据库概念结构转化为某种数据库系统所支持的实际数据模型,也就是数据库逻辑结构。根据博客的使用情况的不同,可以采用Access 2000数据库,Access 2000便于安装。博客系统中各个表的设计结果如下面表格所示。每个表格表示在数据库中的一个表,表3-1为用户表,记录用户的详细信息。表3-1 User用户表字段名称数据类型字段大小是否主键默认值是否必填备注UserID自动编号是用户编号Username文本50否否用户代号Password文本50否是用户密码Sex文本50否是用户性别Question文本50否是验证问题Answer文本50否是验证问题答案Date日期/时间否是注册日期Type表记录文章分类,其字段如表3-2所示表3-2 Type文章分类表字段名称数据类型字段大小是否主键默认值是否必填备注TypeID自动编号是分类编号Username文本50否否用户名称Memo文本50否是分类描述Description文本50否是分类名称表3-3博客主题表,记录博客的主题信息表3-3 Title博客主题表字段名称数据类型字段大小是否主键默认值是否必填备注GuestID自动编号是主题编号Username文本50否否用户名称Description文本50否是主题名称LogoSite文本50否是Logo图表地址表3-4为访客留言表,记录访客的留言信息。表3-4 Guest访客留言表字段名称数据类型字段大小是否主键默认值是否必填备注GuestID自动编号是留言编号Username文本50否否博客所有者代号GuestName文本50否是留言者姓名Content备注50否是留言内容Date日期/时间否是留言日期表3-5文章评论表,记录文章的所有评论。表3-5 Comment文章评论表字段名称数据类型字段大小是否主键默认值是否必填备注CommentID自动编号是评论编号ContentID文本50否否文章代号Person文本50否是评论者姓名Description备注50否是评论内容Date日期/时间否是评论日期表3-6为文章表,记录用户书写的所有文章。表3-6 Article文章表字段名称数据类型字段大小是否主键默认值是否必填备注ContentID自动编号是文章编号Username文本50否否用户代号Title文本50否是文章标题TypelD数字否是文章类别编号Description文本50否是文章描述Content备注否是文章内容Date日期/时间否是书写日期Click数字否是点击数量表3-7为博客主题表,记录博客的主题和一些个性化设置表3-7 Affiche公告表字段名称数据类型字段大小是否主键默认值是否必填备注AfficheID自动编号是公告编号Username文本50否否用户名称Content备注50否是公告内容3.5 数据库的完整性和安全性3.5.1 数据库的完整性约束数据库的完整性是指数据的正确性和相容性。数据库管理系统(DBMS)用一定的机制来检查数据库中的数据是否满足规定的条件完整性约束条件,数据的约束条件是语义的体现,将作为模式的一部分存入数据库中。数据库的完整性约束主要包括以下三方面要求:(1)实体完整性实体完整性是指若属性A是基本关系R的主属性,则属性A不能取空值。对于每个表来说,主键都不可以为空。在用户提交信息时,系统会对用户所填写的信息进行验证,对于其中的关键信息没有填写或者数据非法时,系统会提示用户更改后再提交。这样保证了系统实体完整性。(2)参照完整性由于表和表之间会存在某些联系,当关系R和关系S之间是一对多关系时(R的主键是A,S的主键是b,c是s中的外码),在插入数据时就要保证外码c的值或者为空或者等于R中某个元组的主码值。在对被参照表进行删除操作时应同时进行及联删除。(3)用户定义完整性任何关系数据库系统都应该支持实体完整性和参照完整性。除此之外,不同的关系数据库系统根据其应用环境的不同,往往还需要一些特殊的约束条件,用户定义的完整性就是针对某一具体关系数据库的约束条件。它反映某一具体应用所涉及的数据必须满足的语义要求。例如某个属性必须取唯一值、某个属性的取值范围等。3.5.2 数据库的安全性数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄漏、更改或破坏。在数据库系统中,大量的数据集中存放,同时又为许多用户直接共享,是宝贵的信息资源,因此系统的安全保护措施就显得更为重要。键全的数据库安全机制可以防止数据库被恶意的破坏和非法的存取。本系统的安全设计包括服务器和数据库两方面设计。当用户使用系统时,系统首先会检查用户是否登录,如果用户还没有登录,系统将会弹出警告窗口提醒用户,并将相应的页面跳转至用户登录。在用户提交登录信息后,系统会对用户的身份进行核对,如果在数据库中查找到了相关记录,打开用户页面,表明用户登录成功。对于数据库的安全,主要是通过对授权用户的身份验证实现的。在的系统管理页面,提示用户使用管理员帐号在此登录,没有管理权限的系统注册用户无法登录到数据库管理的后台。系统确认了管理员身份之后统会打开

温馨提示

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

评论

0/150

提交评论