毕业设计(论文)-基于WEB的《汽车产业4S信息管理系统—综合查询》研究与开发.doc_第1页
毕业设计(论文)-基于WEB的《汽车产业4S信息管理系统—综合查询》研究与开发.doc_第2页
毕业设计(论文)-基于WEB的《汽车产业4S信息管理系统—综合查询》研究与开发.doc_第3页
毕业设计(论文)-基于WEB的《汽车产业4S信息管理系统—综合查询》研究与开发.doc_第4页
毕业设计(论文)-基于WEB的《汽车产业4S信息管理系统—综合查询》研究与开发.doc_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

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

文档简介

东南大学毕业设计(论文)报告题目:基于WEB的汽车产业后市场4S体系信息管理系统综合查询系统研究与开发机械工程 院(系)机械设计制造及其自动化专业学号: 学生姓名: 指导教师: 起讫时间: 2005.3.21-2005.6.10 设计地点: 东南大学机械工程系 1基于WEB的汽车产业4S信息管理系统综合查询系统研究与开发摘 要综合查询系统能帮助公司领导随时掌握和了结企业的生产经营情况,以正确拟定和执行公司经营决策,故设计了此查询系统。本论文主要对综合查询系统进行了需求分析,作了功能模块的设计,并在此基础上绘制了系统的关联图和数据流程图。通过概念结构设计、逻辑结构设计和物理结构设计等完成了相应的数据库设计。最后进行了整个查询系统的界面设计和编程调试工作。本查询系统以稳定快速的SQL Server 2000为后台数据库,采用B/S结构,使用ASP.NET、SQL等语言开发、调试。同时本系统采用图形与表格结合的查询方式,使查询时一目了然。另外本文还将对VPN技术在综合查询系统中的运用,以及综合查询系统三层体系的架构进行讨论。关键字: 数据库 WEE服务器 ASP.NET VPN 三层架构A STUDY AND EXPLOITATION ON THE WEB-BASED4S INFORMATION MANEGING SYSTEM OF AUTOMOBILE INDUSTORY COMPREHENSIVE SEARCHING SYSTEMAbstractAs is known to all of us, the Comprehensive Search System can help the leaders of the company know about the production and management of the enterprise on time. With the help of which, the leaders could draw-up and carry out the decision correctly. Therefore, we decide to design this searching system.This paper mainly carries on a demand analysis on the comprehensive search system, makes the design of the function module, and draws the relationship diagrams as well as the data flowing charts of the system. We also complete the designing of the database through the conceptual structure designing, the logic structure designing and the physical structure designing. Finally we complete designing of the interface and parts of the procedures, and debug them successfully.Besides, the query web system which uses stable and high-speed SQL Server 2000 as the background database, and adopts easy-using Browser/Server mainframe, is developed in ASP.NET and SQL environment. At the same time, this system adopts the searching method that combining the sketch with the forms, which makes the searching obvious.Besides, this paper will still make detailed discussion on the usage of VPN in the searching system and the three-layer structure of the searching system.Key Words: database, WEB Server , ASP.NET , VPN , three-layer structure目 录摘要 Abstract 第一章 绪论 1 1.1 课题的背景及意义 1 1.2 本课题主要研究的任务 2第二章 综合查询系统分析 3 2.1 需求分析 3 2.2 功能结构分析 3 2.3 数据流程分析 5第三章 综合查询系统数据库设计 8 3.1 数据库概念设计 8 3.2 数据库逻辑设计 10 3.3 数据库物理设计 12第四章 综合查询系统的实现技术 164.1 综合查询系统开发过程中使用的程序设计语言C#和方法 164.2 数据库服务器端的编程方法164.3 综合查询系统的实现18第五章 综合查询专题分析与研究27 5.1 VPN技术在综合查询系统中的应用27 5.2 基于B/S(浏览器/服务器)的综合查询系统三层体系的架构31第六章 结论与展望33致谢 34参考文献 35附录 第一章 绪论第一章 绪论1.1 课题的背景及意义近年来,随着信息技术的迅猛发展,企业内部局域网技术逐渐完善,更多的局域网和Internet网相连接,无论企业管理层领导身在何处,都可以通过Internet 进入企业的局域网,根据自己的需求在网上及时地查询自己所需的生产、财务、销售和库存等企业内部重要数据,从而能更有效地为企业做出正确的决策。对于汽车行业来说,其市场竞争之剧烈程度比起其他行业有过之而无不及。面对市场的风云变幻,谁能及时得到市场信息反馈,加快信息流通,谁就可以在市场竞争中占得先机,立于不败之地。对于面向市场不久的南京苏源汽车有限公司来说,亟需提高工作效率、加强售后服务、加快信息流通,实现办公自动化;需要更加有效、更加透明的管理,为企业管理层提供决策依据。为此,我们需要建立这个综合查询系统。我们主要针对利用Internet/In2tranet平台下的ASP.NET技术,开发基于WEB环境下的综合查询系统进行了研究和探讨。为此有必要先对ASP.NET和WEB技术进行简单探讨。1.1.1 ASP.NET 简介ASP.NET技术是目前应用开发中的核心技术,也是目前流行的3P(ASP/JSP/PHP)技术中应用广泛的一种。ASP和ASP.NET同是微软公司的产品,也是目前较为常用的一种开发技术。 ASP.NET从根本上对ASP进行了升级,全面加入了面向对象的编程理念,并把ASP.NET作为.NET战略中重要组成部分。ASP.NET 控件提供了分离代码(应用逻辑)和内容(页面的设计元素)的简洁方式。设计人员可以将ASP. NET 控件放入页面,而不必为应用逻辑担心他们可以将精力集中于布局的图形。ASP.NET页面在服务器上执行而不是在浏览器上,当浏览器请求ASP.NET 页面时,会获得标准的HTML 页面。这意味着ASP.NET 页面可以与任何浏览器兼容,而不必假设浏览器支持VBscript、Java 或JavaScript。在ASP网页中只限于使用脚本语言,如VBScript或JScript等,对于使用不同的浏览器必须考虑使用不同的程序代码,也缺乏以组件为基础、事件驱动的开发方式,使ASP 程序开发不便。ASP.NET 允许使用编译式语言, 如VB.NET、C # 、Jscript.NET等,编程人员编写的程序要先编译成MSIL(Microsoft Intermediate Language)的程序语言,然后再被编译成机器码加以执行,因而大大提高了程序的独立性。ASP代码的执行是以解释方式进行,每次执行都必须经过解释与加载的过程,其执行的效率也因此而受到影响。ASP.NET程序代码执行要先编译成MSIL ,然后再被编译成机器码加以执行,MSIL 程序非常接近于机器码,从MSIL编译成机器码加以执行的速度非常快,而通过不同的介于MSIL与机器码之间的编译器JIT编译,MSIL可以及时地被编译成为不同类型的机器码,然后在不同的机器中执行。相对于ASP 的执行过程,ASP.NET的执行过程多了一次编译过程,因而在ASP.NET网页第一次被执行时会比ASP 慢一些,但第一次被浏览后,MSIL 会被存储下来,所以当同一网页第二次被浏览时只需花费从MSIL 编译到机器码后执行的时间,结果会比ASP 快很多。1.1.2 WEB 简介We b设计的四个主要方面是:内容、技术、外观以及经济。内容的目的在于告之或者劝说用户;使用技术的目的是实现合理的功能;外观方面的考虑则提供了站点的形式;对于大多数站点来说,还需要考虑所建站点的经济效益。如果没有清晰的目标和效益,一般来说这样的站点是不会建立的。We b比传统软件更专注于内容,正是内容构成了We b站点。内容可以是文本,二维图像、三维动画、音频、视频或多种内容形式的混合体。高质量的内容在We b世界里是非常重要的,用户寻找有用的内容,在找到后会利用它们。令人愉悦的导航图像或炉火纯青的外观设计会诱惑一个用户访问站点,但仅有这些却不会留住用户。用户浏览站点都带着明显的意图,如寻找有价值的内容或做一些有用的事情。如果站点空洞无物,用户会最终离开。然而还有一种情况,站点即使有高质量的内容,如果用户无法找到它,这些内容也毫无价值。尽管一个好的站点必须有好的功能和简单的导航系统,但这些特征并不能马上得到承认,站点的外观经常是最先被注意到的。好的Web 设计与用户对站点外观的品味直接相关,第一印象有赖于在线的站点。外观好的站点会主观地被认为比外观差站点好,至少第一眼是这样。因此:外观会显著地影响用户开始时对站点的价值判断。但用户继续使用时,会逐渐减少对外观的关注。当一个用户离开某个站点时,他会有一个综合的印象对站点访问是否成功的一般感觉。一般来说,这种感觉有可能是正面的、负面的或中性的。用户是否发现站点很难使用?站点访问速度是否很慢?站点是否运行得很糟糕或经常出错?站点是否设计得很糟糕?以上任何一种原因都可能导致用户在离开时对站点有负面的评价。可能一开始受到外观的影响较大,但最后的印象却来自内容、外观、技术以及可用性的综合。综合印象值可能很大程度上与用户在访问过程中是否达到目的相关。这样,虽然外观在第一印象中占主导性的作用,最终印象的产生却很复杂。因此,We b站点设计的关键问题是形式和功能的平衡。形式不好的功能是令人厌烦的。站点可能运行得很好,但不能激发用户的灵感。与之相反,如果形式富有表现力,功能有限,用户则会感到失望。形式和功能之间需要一个清晰且连续的关系。简单地说,站点的形式应直接与它的意图相关,如果站点是商业性的,它的外观可能非常绚丽,并且有相当份量的多媒体内容,如果这些内容能帮助实现我们的目标的话。相反,如果站点是单纯事物性的,如在线银行,则可能更注重于实用的形式。当然,要确定站点的合适形式,要求清晰地界定站点的功能。1.2 本课题主要研究的任务汽车产业4S信息管理系统综合查询系统的软件设计主要是在苏源汽车目前现有信息管理系统基础上进行二次开发,并与原系统进行无缝连接。拟开发汽车产业4S信息管理系统综合查询系统,采用B/S结构,构建多层ASP网页。课题研究设计的重点是:1) 深入调研资料,并在此基础上进行需求分析;2) 对软件系统进行方案设计与结构设计;3) 在方案设计之基础上,合理的进行数据库及界面之设计;4) 最后完成程序设计及调试工作。1第二章 系统分析与结构设计第二章 系统分析与结构设计系统分析是信息系统开发工作中最重要的环节。系统分析是在调查研究的基础上,完成组织结构与功能分析,数据及其数据流分析。现以本综合查询系统为例说明系统分析的过程。2.1 需求分析要设计数据库,首先必须确定数据库的用户和用途。数据库就是一个单位的模拟,数据库设计者必须对一个单位的组织、各部门的联系、有关事务和活动以及描述他们的数据、信息流程、政策和制度、报表及其格式和有关的文档等有所了解。数据库系统设计需求分析工作是对系统分析出来的各个子系统的具体数据进行分析,抽象出实体与关系,为下一步数据库的概念设计打下基础。分析的结果整理成了需求说明。需求说明是数据库人员和应用单位的工作人员取得共识的基础,必须得到单位的有关管理人员的确认。我们要研制和开发的系统是基于internet环境下信息管理系统。该系统主要应用于管理层。公司的最高决策层,对整个公司运作起规划、管理、监督的职能,最高层的决策质量直接影响到公司的经济效益和公司的生命力,而科学的管理和决策离不开及时、准确的信息和对信息的综合分析。最初用户需求为:“此系统具有一般查询系统之功能,使领导决策层能够及时了解公司情况,以便准确作出各项决策,同时具有不同管理员不同管理权限之功能。”通过对其他一些查询系统的调查,我们本着“面向管理、辅助决策”的设计思想现制定该系统功能如下:前台按分类查询,它们分别是:异常查询、企业分析、客户查询、库房查询、财务查询、品管查询、销售查询和维修查询,见下图。图2-0 系统结构图同时本系统将采用图形与表格结合的查询方式,图文并茂,使查询时一目了然。考虑到数据比较少时,查询起来还比较方便,如果一多查找某个数据就比较困难,所以我们在每个查找功能中都设置了许多不同的查询条件,通过查询条件的自由组合可以得到不同的查询结果。同时我们还定义了分页功能,以方便快速查询。鉴于用户的“不同管理员有不同的管理权限”之功能,我们设置了登陆验证模块,只有用户名和密码同时正确时,才允许登录该页面。2.2 功能结构分析公司管理层负责公司的日常管理工作,拟定及执行公司经营决策,处理公司重要事务。公司领导应随时掌握和了结公司的运营情况,对其中的异常情况能够及时处理。对于一个综合查询系统来说,不但要能够进行品管查询、财务查询、库房查询、销售查询、和维修业务查询,而且还要能够查询客户投诉和服务反馈等情况。此外,综合查询系统还应该能够及时收集异常情况并进行报警,追溯产生异常的原因及相应的整改措施。所以在本查询系统中制定功能结构分析图如图2-1所示。2.2.1企业分析企业分析主要包括对企业服务状况、销售状况、和财务状况的分析。销售状况的分析主要是通过对车辆同期销售的比较,分析出出销售的规律,预测销售趋势和走向,为制定下一步销售计划,如销售车型、销售价格等提供依据。具体查询内容分别是车辆当月销售与上月对照表,车辆近一年销售的汇总表和车辆销售单价数量历史同期比较表等。将不同车型的车辆销售价格和销售数量以图表的形式显示出来。服务情况的分析主要包括近一个月客户投诉记录、市场反馈信息和品情信息反馈。通过对客户集中反应的问题的统计分析,制定相关部门找出客户投诉原因,并研究出解决方案。通过对市场信息反馈如价格、用户需求量、销售对象、车辆流向等的分析,为下一步的销售计划的制定提供依据。2.2.2 客户查询包括满意度查询、服务反馈报表、投诉率分析表等。并要求绘出相应统计图。及时了解客户反馈,以调整经营策略。2.2.3 品管查询主要包括零件索赔和收获异常退货查询。按车型、供货单位、索赔日期、退货日期等分别查询索赔和退货记录,并统计出相应的金额,为下一步采购计划的制定提供依据。2.2.4 财务查询包括应收帐款查询(上月累计款、本月应收帐款、本年累计,并按具体日期查询应收金额和厂商名称),应付帐款查询(上月应付款、本月应付帐款、本年累计、并按具体日期查询应付金额和厂商名称),资产负债查询(流动资产合计、固定资产合计、流动负债合计),损益表,月产值资金情况说明表,管理费用表(工资、办公费、业务招待费、电话费等)。2.2.5 库房查询包括配件出库查询、配件入库查询、配件库存清单、配件消耗明细和存货月报表。(1)零件出库查询配件出库有两种方式,内部领料(维修)和销售,所以出库查询又分为领料查询和销售查询。通过查询条件的自由组合可以实现多种查询方式。比如按车型、按零件编号、按零件名称、按时间查询等。用户还可以根据自己的需求任意组合查询条件,以实现查询目的,比如同时输入车型和时间,查询出的结果将会是这一时间段内出库的、且满足该车型条件的零件。并且可以按车型生成一段时间内的配件销售、领用数量统计图,使查询比较起来更加直观方便。(2)库房存货查询库房存货查询又可以按照车型、库房名称、零件名称等分类查询,也可以根据个人的需要组合查询条件,查询方法同上。库房存货还具有自动报警功能,当库中零件低于某设定标准时,系统会依次进行预报警和报警。(3)配件消耗查询根据配件的种类和车型可以分类统计出配件的消耗情况。还可以查询出某一时间段内某种配件的消耗情况。此外,该查询还可以根据数据库中的数据动态生成不同车型的配件消耗统计图,以定量的、直观的比较出不同车型的配件消耗情况2.2.6 销售查询包括月利润及税收情况历史同期比较、月份销售汇总表、业务员销售汇总、销售明细表等。2.2.7 维修业务查询包括按车型分类查询、按维修项目分类查询、按维修状况分类查询、按用户类型分类查询。2.2.8 系统管理系统管理主要是对整个综合查询系统的信息的维护、及用户权限的设置,与企业其他部门的信息交流,从整个系统的角度出发,使系统层次分明。2.3数据流程分析系统功能图仅仅表明了系统的功能模块,而系统开发时需要明确知道系统中数据的流动方向和处理方式等,数据流程分析可以用来解决这类问题。作为信息载体的数据是系统要处理的主要对象,因此,全面准确的收集、整理、分析数据和数据流程是在系统分析阶段必须进行的工作。数据流程分析主要包括对信息的流动、传递、处理、存储等的分析。数据流程分析的目的就是要发现和解决数据流通中的问题。这些问题有:数据流通不畅,前后数据不匹配,数据处理过程不合理等等。一个通畅的数据流程是系统用以实现业务处理过程的基础。常用的数据流程分析是通过分层的数据流程图来实现的。其具体做法是:按业务流程图理出的业务流程顺序,将相应调查过程中所掌握的数据处理过程,绘制成一套完整的数据流程图,一边整理绘图,一边核对相应的数据和报表、模型等。如果出现问题,则深入调研并根据需要修改相应业务流程。数据流程分析首先是将所得到的数据分为如下三类:(1)输入数据类(主要各类报表),即信息系统输入或网络要传递的内容。(2)存储数据类(主要指各种台帐、帐单和记录文件),它是信息系统数据库要处理的主要内容。(3)输出数据类(主要指系统运行所产生的各类报表),他们是信息系统输出和网罗传递的主要内容。分类结束后,开始对数据流程进行分析以表达用户对数据的要求。一般,一套数据流程图可以由关系数据流程图、顶层数据流程图、中间数据流程图和底层数据流程图组成。关系数据流程图用于描述本系统模块和其它系统模块的数据传输以及本系统模块的范围和边界。顶层数据流程图从总体上反映本系统模块内部以及与其他数据模块的数据传输。为反映更详细的内容,对顶层数据的进一步细化可以得到中间数据流程图,他主要是对某个数据处理的分解。而底层数据流程图是由最简单,不能再分解的数据处理组成。图2-2所示是查询系统模块的关系数据流程图。它自身需要其它数据模块的支持,故此关系数据流图表达了查询系统模块与其他模块的关系。图2-3所示的是查询系统模块的顶层数据流图,图2-3 顶层数据流图41- -东南大学毕业设计论文第三章 系统数据库的设计数据库设计就是要求对一个给定的应用环境,构造最优的数据库模式,建立数据库及其相关应用,使之有效的存储数据,满足用户的应用。综合查询系统牵扯到的数据库较多,比如库存数据库,财务数据库等。如何查询管理这些数据,设计一个结构合理,使用方便,效率较高的数据库系统就成为整个开发过程中的一个重要问题。目前常使用的各种数据库系统设计方法都属于规范设计法,即运用软件工程的思想与方法,根据数据库系统设计的特点,提出各种设计准则与设计规程。其中著名的新奥尔良方法将数据库系统设计分为四个阶段:需求分析(分析用户要求)、概念结构设计(信息分析和定义)、逻辑结构设计(设计实现)和物理设计(物理数据库设计)。(1)需求分析进行数据库设计首先必须准确了解与分析用户需求。本论文第二章已通过功能结构图、数据流程图等方式完成了需求分析并进行了系统分析。(2)概念结构设计准确抽象出用户需求后,下一步应该考虑如何实现用户的这些需求,最终从中抽象出的信息结构就是数据库的概念模型,这一过程就是概念结构设计的过程。因为数据库逻辑结构依赖于具体的数据库管理系统(Data Management System,简称DBMS),直接设计数据库的逻辑结构会增加设计人员对不同的数据库管理系统的理解的负担,因此在将现实世界需求转化为机器世界的模型之前先以一种独立于具体数据库管理系统的逻辑描述方法来描述数据库的逻辑结构,即设计数据库的概念结构,这种分布设计的方法可以减少设计的盲目性,有利于快速实现和变更。(3)逻辑结构设计逻辑结构设计是将抽象的概念结构转换为所选DBMS支持的数据模型,并对其进行优化的过程。从概念结构设计向逻辑结构设计转化的时候,必须同时考虑数据库表结构的规范化和反向规范化。(4)物理设计物理设计阶段是将实际的物理设计约束应用到逻辑结构设计的阶段,它主要是从开发人员的角度考虑的。物理设计的主要目的是选取一个适合应用环境的数据库物理结构。在实际数据库系统设计过程中,还需要考虑数据库实施和维护中的内容:1) 体系结构的设计,包括选择客户机/服务器模式还是选择带有中间层的三层体系结构,是否需要采用分布式数据库或并行处理等先进技术;2)安全设计,包括数据库用户权限匹配、是否需要引入数据库审计等,如采用审计,还需确定使用何种审计方法,审计的范围多广等;3)性能设计,除了逻辑结构设计和物理设计中已解决的性能问题外,还需要选择数据库的优化方法和优化程序等;4)与其他系统的链接与集成,例如公司存在的旧系统能否为新系统所用,或是否能方便的为今后的其他系统提供接口等。本数据库的设计先借助Power Designer 得到概念数据模型(CDM)然后转化为物理数据模型(PDM),最后生成SQL脚本语言,进而生成SQL Server 数据库。3.1 数据库概念设计3.1.1概念模型的选择在需求分析的基础上,以需求规范作为输入,产生数据库的概念模式。概念模式是数据库结构的高级描述,独立于用来实现数据库的特定数据库管理系统软件。概念设计的目的是描述数据库的信息内容。选择合适的模型来表示数据和功能,对数据库设计和功能分析有重大影响。层次、网状、和关系数据模型是数据库诞生以来广泛应用的三种数据模型,一般称之为传统数据模型。传统数据模型是文件中所用数据模型的继承和发展。它们都继承了文件中记录、字段等概念,在物理级也借鉴了文件的索引、散列等存取方法。他们都在记录的基础上定义了各自的数据的基本结构、约束和操作。但由于历史和技术条件的限制,传统数据模型留有很深的面向实现的烙印。如果直接用传统数据模型作为概念设计的数据模型,则势必把许多实现的细节放到概念设计阶段去解决,即过早地与具体的DBMS相联系,影响设计地效率和质量。从70年代后期开始,陆续出现了各种非传统数据模型。这些数据模型出现在关系数据模型之后,因此又称为后关系数据模型(post relational data model)。ER数据模型(Entity-Relationship data model),即实体联系数据模型,于1976年由P.P.首先提出。ER数据模型不同于传统数据模型,它不是面向实现而是面向现实世界。设计这种模型的出发点是有效和自然的模拟现实世界,并且对现实世界进行抽象,而不是首先考虑它在机器中如何实现。下面介绍ER数据模型的三个抽象概念。(1)实体(entity)数据是用来描述现实世界的,而描述的对象是形形色色的,有具体的,也有抽象的,有物理上存在的,也有概念性的,这些对象的共同特性是可以相互区别的,否则,他们就会被认为是统一对象。凡是可以相互区别而能被人们识别的事、物、概念等传统抽象为实体在一个单位中,具有共性的一类实体可以划分为一个实体集(entity set)。在ER数据模型中也有型与值之分:实体集作为型来定义,而每个实体是它的实例或值。即值是具体的事务或特征,是个体的概念。(2)属性(attribute)实体一般有若干属性,称之为实体的属性。每个属性都有其取值的范围,在ER数据模型中称为值集(value set)。在同一实体集中,每个实体的属性及其域是相同的,但可能取不同的值。当某个属性对某个实体的适用或属性未知时,也可以用空缺符NULL。能唯一标识实体的属性或属性组(这组属性的任何真子集无此属性)称为实体集的实体键(entity key)。如果一个实体集有多个实体键存在,则可从中选一个最常用到的作为主键(entity primary key)或称主码,主关键码,主关键字等。(3)联系(relationship)实体之间会有各种关系,这种实体与实体之间的关系抽象为联系。联系可用实体所组成的元组表示,例如元组表示实体e1,e2.en之间的一个联系。如果n=2则称为二元联系;如果n2则称为多元联系。同一类型的联系所组成的集合成为联系集(relationship set)。设R(E1,E2,En)表示定义在实体集E1,E2.En上的联系集,则在上式的实体集E1,E2,En中,可以有相同的。在二元联系中,ER数据模型把联系分为一对一(1:1),一对多(1:n)、和多对多(M:N)三种,并在模型中明确的给出这些语义,这种表示方法还可以推广到多元联系。3.1.2 综合查询系统概念结构设计综合查询系统概念结构设计是在需求分析和数据流程图等基础上的抽象。我们使用Power Designer软件绘制ER实体图,在Power Designer中,它被称为CDM。首先确定实体的名字并填写实体中各项属性的名称和数据类型。在这里,需要创建“入库零件”、“入库单信息”、“领料”、“领料单信息”、“零件基本信息”等二十六个实体,并填写相应属性。然后确定实体主键以标识实体。例如“零件基本信息”表中,零件编号是主键,只需在设计时对“零件编号”行的“P”列打勾即可。最后对创建好的实体添加关系。至此,此查询系统的ER图绘制完毕。部分ER图,如图3-所示。详见附件。图3-部分综合查询系统ER实体图3.2数据库逻辑设计3.2.1概念结构模型到逻辑结构模型的转化逻辑结构设计的目的是把概念数据模型转换为数据库管理系统可以处理的逻辑模型,也即将由ER图表示的概念模型转换为DBMS通用的逻辑模型,如关系模型,然后对其优化。以关系模型为目标的逻辑结构设计方法是将ER实体图中的概念模型映射为关系模型,并且包括一组关系定义,每个关系有一个主键,映射步骤如下:(1)把ER实体图中每个实体变换为一个关系模型。(2)变换每个联系:多对多的联系需加一个单独的关系模型;而一对一的或者一对多的联系可用在实体关系中增加属性(此处为外键)来模型化。(3)ER图中的属性可转换为关系的属性。3.2.2逻辑结构设计中的规范化和反向规范化逻辑结构设计部分一个重要的工作就是逻辑模型的规范化,从ER图转换而来的关系模型只是逻辑模型的雏形,要成为逻辑模型还要进行以下工作:1)规范化;2)必要情况下采用反向规范化,满足性能、存储空间等要求;3)用DBMS所提供的DDL(数据描述语言)实现逻辑模型。规范化是使关系结构至少满足第三范式,这样对数据库操作可避免异常、减少冗余。把一个非规范式的数据结构转换为第三范式的数据结构的过程,如图3-3所示。反向规范化是对规范化的表作出妥协的一个过程,即为了性能的原因,故意引入冗余。可以把反向规范化看成对规范化数据的一种扩展,通过反向规范化将改进查询功能。其实质就是在规范和性能之间实现平衡,使之对应用程序最有利。反向规范化主要包括向下反向规范化、向上反向规范化、表内反向规范化等。向下反向规范化是指从一个父实体中获取某个属性,通常这样作的唯一好处是在需要查询子实体时候避免一个链接操作。但通过这种反向规范化来消除连接往往会导致大量的层叠更新。向上反向规范化是指在父实体中以汇总或聚合的形式保存来自子实体的信息。例如在采购订单中,订单主表和订单明细表通过订单号连接,如要得到订单总价,必须对其订单明细求和,但是往往链接后再求和的SQL语句效率较低,所以可以考虑在主表中加入订单总价属性,这就带来了冗余,但在查询时明显的提高了效率。表内反向规范化是指在实体中保留一个可以从其他属性中派生出来的属性。通常使用表内反向规范化的唯一正确原因是有基于派生值查询的要求,并且对查询速度有较高要求。例如在领料单信息中,有“出库价”和“领料数量”两个属性,一般情况下,不需要再建立一个“合计”属性,但如用户经常需要查询总价,希望加快查询速度,则需要建立“合计”这一属性,其值即为“出库价”和“领料数量”两个属性的乘积。反向规划带来了表的冗余,也就不可避免的带来了别的开销。例如,在使用向上反向规范化时,子实体中的每条记录的增加,删除和修改都可能对父实体中某个属性带来影响,所以必须采用相应的办法消除反向规范化带来的影响。常用的实现反向规范化并能可靠的消除其影响的方法是使用触发器。3.3数据库物理设计3.3.1物理设计的目的数据库最终是要存储在物理设备上的。数据库在物理设备上的存储结构与存取方法称为数据库的物理结构。它依赖于给定的计算机系统。为一个给定的逻辑数据模型选取一个最适合应用环境的物理结构的过程,就是数据库的物理设计。物理设计通常分为两步:1)确定数据库的物理结构,在这里主要指存取方法和存储结构;2)对物理结构进行评价,评价的重点是时间和空间效率。数据库物理设计的目的是选择合适的存储结构和存储路径,也就是设计数据库的内模式。内模式不直接面向用户,一般用户不一定、也不需要了解内模式的设计细节。内模式的设计可以不考虑用户理解的方便,其主要设计的目的有二:1)提高数据库性能,特别是满足主要应用的性能要求。2)有效利用存储空间在这两个目标中,第一个目标更为重要,因为性能仍然是当今数据库系统的薄弱环节。3.3.2物理设计的内容不同数据库管理系统所提供的物理环境、存取方法、和存储结构有很大差异,提供给设计人员使用的设计变量、参数范围也各不相同,所以首先需要选择具体的数据库管理系统。考虑到数据存取速度,我们选用的是Microsoft Sql Server 2000数据库管理系统。本系统物理设计的总的原则是优化物理数据库的结构,使在数据库上运行的各种事务相应时间尽可能小,存储空间利用率最大程度的高。一般来说,数据库的物理设计内容主要包括为关系模型选择存储方法和设计关系、索引等数据库文件的物理存储结构。3.3.3综合查询系统的物理设计本系统的物理设计也是使用Power Designer实现的,其PDM图的设计过程即是物理设计的过程,其索引的创建,存储参数的选择可以直接在PDM图上进行,设计完成后,完整的DDL描述可以根据选择的数据库自动生成。初始的PDM图可以通过概念结构设计和逻辑结构设计后的CDM图转化得到,如图3-5为图3-通过直接的CDMPDM的转化得到的结果,在图3-5的基础上添加需要创建的索引等其它设计内容就可以得到系统的PDM图。在这里,主要对零件基本信息里的零件编号设计了索引,如图3-6所示。图3-5 综合查询系统PDM图图3-6 零件基本信息中索引的建立物理设计结束后,就可以通过PDM生成数据库能识别的DDL代码,并最终生成数据库文件。下面是综合查询系统中“零件基本信息”表的DDL代码。/*=*/* Database name: test */* DBMS name: Sybase AS Anywhere 7 */* Created on: 2005-6-4 16:16:42 */*=*/*=*/* Table: ljjibenxinxi */*=*/create table ljjibenxinxi ( ljianbh characters not null, pinming varchar not null, positioncode characters not null, chexing characters not null, zuhao characters not null, jinhuojia money, xiaoshoujia1 money, xiaoshoujia2 money, zuidishoujia money, primary key (ljianbh);/*=*/* Index: Reference_2_FK */*=*/create index Reference_2_FK on ljjibenxinxi (zuhao ASC);上述DDL语句可以放入数据库中执行生成实际的表。PDM可以直接在数据库中生成数据库对象,也可以为当前的DBMS生成数据库SQL脚本,运行SQL脚本即可生成相应数据库。本查询系统的数据库SQL脚本在此不作说明,详见附加文件SQL脚本。生成的SQL Server数据库,其关系图如下:图3-7 SQL Server 数据库关系图实际开发过程中,数据库设计的各个阶段并不是完全线性的,而是通过一步步的向下走,遇到问题再回头重新探讨设计的过程,而且,在后期程序设计过程中,还可能对数据库进行相当大的修改以达到最优的运行性能要求。第四章 综合查询系统的实现技术第四章 综合查询系统的实现技术4.1 综合查询系统开发过程中使用的程序设计语言C#和方法默认情况下,在ASP.NET应用程序中可使用三种语言作为脚本语言:VB.NET、Jscript.NET和C语言。其中C是.NET的原生语言,是随着.NET的发布而发布的一种全新的面向对象编程的语言,因此C是使用.NET编程的最佳语言。本设计绝大部分程序将使用C作为编程语言。Visual C#.NET是Visual Studio.NET 2003编译平台的一部分。.Visual C#.NET 2003 是一种现代的、创新的编程语言和工具,可以为Microsoft Windows、网络和种类繁多的设备创建连接.NET的软件。C#是一种真正的面向对象基于组件的编程语言。与传统的面向过程的编程方法相比,面向对象编程方法有三个优点:(1)程序的可维护性好;(2)程序容易修改;(3)对象可以使用多次,可重用性好。面向对象技术的要点,就是把问题抽象成各个对象并封装之。封装、继承、多态是对象中的三个基本特征。封装:是指将对象可访问的外部内容和对象隐蔽的内容细节分开。这一特征保证了对象的界面独立于对象的内部表达。它只提供一个接口给对象的使用者,使得只有那些能被直接操作的成员才能被使用。封装提供的是一道屏障,将类的外部接口(也就是类的使用者能看到的公共成员)与它的内部实现细节分割开来。封装的优点在于类的开发者可以将静态的、不变的成员公开,而将那些动态的、容易改变的类成员隐藏起来。在C#中通过赋予每个类成员访问限定符public, private或者protected就可以实现封装。继承:继承指的是程序员指定的一个类与另一个类之间的某种关系。通过继承,可以创建或派生一个新的类而它以已存在的类为基础。然后可以随心所欲的修改这个新类并且创建这个派生类型的新的对象。这个功能就是构建类层次结构的精华所在。除了抽象,在系统整体设计中继承就是最重要的部分了。派生类是被创建的新类,基类就是新类从其派生的那个类。新创建的派生类继承了基类的所有成员,因此可以重新利用以前的工作成果。多态:多态是指同一个操作作用于不同的对象上可以有不同的解释,并产生不同的执行结果。 4.2数据库服务器端的编程方法 作为高效的B/S程序,必须有效划分客户机与服务器之间的处理使网络消息往返次数最少,也即在网络传输方面的开销最少;同时,服务器特别是现在的64位服务器的运算能力远远强于普通的客户机,因此,将复杂的业务逻辑和需要进行大量数据统计的过程放在服务器端实现是最理想的。服务器端需要及时响应数据请求,并维护数据完整性,一款优秀的服务器端语言是必不可少的。在这里,SQL Server中的SQL语言和基于该语言的存储过程是我们编写服务器端程序的基础。SQL Server 数据库能够轻松通过InterNet和内部网络加以访问。它提供一系列方法将数据填充到WEB服务器,同时提供对数据的快捷访问。它是一个可伸缩、高性能的数据库管理系统,具备内置的复制能力、InterNet集成、开放系统体系结构及强大的基于GUI(图形用户接口)的管理工具。SQL Server的一个独特功能是基于服务器的作业调度系统,允许直观的控制多个服务器和远程操作,这极大的增强了数据库的性能和可靠性。SQL是Structure Query Language的缩写,即结构化查询语句。SQL语言以其功能丰富、语言简洁备受用户和计算机工业界欢迎。作为一种面向集合操作,能对数据提供自动导航的非过程化语言,SQL语言已不限于数据查询(Data Query),它还包括数据操作(Data Manipulation)、数据定义(Data Definition)、数据控制(Data Control)等功能。SQL语言是一个综合的、通用的、功能极强的关系数据库语言。一般而言,一个SQL数据单元的程序结构如下所示:引入命名空间;建立连接,即建立Connection对象;利用Command对象执行命令并从数据源返回结果;异常处理部分;结束。其中异常处理部分根据需要而定,其他部分是必须的。在该查询系统中,为了提高系统的效率,可以在数据库服务器端使用存储过程。存储过程存放数据库中的一个脚本,是保存起来的可以接受和返回用户提供的参数的Transact-

温馨提示

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

评论

0/150

提交评论