




已阅读5页,还剩33页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基与.net的信息查询系统摘 要:随着xx油田公司企业信息化建设的不断深入,目前还没有实现通过网络对专业标准进行方便的查询使用,为此本文致力于使用.net框架中的asp.net技术及oracle 9i数据库,设计了xx油田公司勘探相关标准网络查询系统。以windows nt server+iis5.x+asp.net+oracle 9i的组合为技术支撑,根据勘探相关标准分类方法,结合visual c#.net、dreamweaver等软件,采用b/s模式三层体系结构,设计了xx油田勘探相关标准信息分类查询系统;利用精确或模糊及体系表等查询方法实现了勘探相关标准的标准号、标准名称查询及体系标准结构查询,利用visual c#.net建立com add-in,实现web上的office浏览。初步实现了勘探相关标准的数字信息化平台建设。关键词:网络信息查询;网络数据库;asp.net;ado.net;oracleabstract: with oil companies xx information the continuous deepening of the building, has yet to achieve through the network of professional standards for the use of convenient, for this paper to use. net framework of asp.net technology and oracle 9i database, design of the xx oilfield exploration company standards for network systems. to windows nt server + iis5.x + asp.net + oracle 9i for a combination of technical support, according to the standard classification of related exploration, with visual c #. net, dreamweaver, and other software, using b / s model three-tier architecture, design xx oilfield exploration criteria for classification of information systems and the use of precise or vague, such as table system for the exploration methods to achieve the standards, criteria, standards for the name and structure for the standard system, using visual c #. net establish com add-in, achieving the office on the web browser. achieved a preliminary exploration of the relevant standards of digital information platform construction. key words: network information, network database; asp.net; ado.net; oracle目 录第一章 概述31.1课题背景31.1.1课题来源31.1.2课题的意义31.1.3网络查询系统的要求41.2查询系统的功能设计41.3查询系统的方案及主要特点62.1系统功能设计102.2系统结构设计方案比较112.3数据库方案选取162.4系统工作原理172.5系统的架构18第3章网络查询系统详细设计193.1 oracle数据库数据表设计193.1.1标准相关数据表设计193.2数据访问技术ado.net及访问oracle原理213.3用户部分223.3.1注册用户223.3.2用户登陆233.3.3用户管理243.4关键词检索的实现253.4.1 sql语句253.4.2关键词检索页面设计253.4.3关键词检索的实现263.5标准正文浏览的实现273.6体系结构检索的实现303.6.1体系结构检索的页面设计303.6.2体系结构检索的实现303.7数据管理313.8系统安全性323.8.1身份验证323.8.2不同用户级别的控制33结 论34参考文献35致 谢37第一章 概述1.1课题背景1.1.1课题来源随着目前xx油田公司企业信息化建设的不断深入,办公电子化已经十分普及,尤其是企业门户网站的建立,给广大职工带来了极大的方便。但是,目前还没有实现通过网络对专业标准进行方便的查询使用,为此,xx油田公司勘探部提出研制xx油田公司信息查询系统软件,以方便广大干部职工查询和使用专业标准。1.1.2课题的意义中油股份的上市,要求现在的石油行业按照现代石油公司模式进行企业的管理和经营,也就是要求这些企业在日常工作中严格执行相关标准,建立健全标准体系结构。经过几年来的工作实践,油田有限责任公司勘探部在完善油田公司勘探相关标准、制订勘探管理流程的同时,一直致力于油田公司勘探标准的宣贯工作。截至2003年6月底,勘探相关专业在用的标准有国家标准15项、行业标准316项、企业标准185项,钻井专业分标委2003年8月成立,今年正在制定5个钻井方面的标准。根据需要,每年还要对老标准进行逐步修订和对新标准进行制订。这些标准数目非常庞大,制、修订时间不同,所以出版版本、出版时间也随之不一样,再加上标准制订单位不同,造成目前执行的标准来源不一样,标准载体不完全一样,有的是光盘,有的是单行册,有的是合订本,从而给查阅、宣贯、修订以及制订工作带来了极大的不便。目前,在xx地区使用勘探相关标准的人群比较分散,查询及使用标准极不方便,为此,油田有限责任公司勘探部提出开发“油田有限责任公司勘探相关标准查询系统”,该系统将勘探相关的8个专业的国家标准、行业标准及企业标准信息化,一方面实现了企业管理的信息化,另一方面为广大用户快速、准确地查询各标准提供了极大的方便。同时,该项目的开发将实现国家标准、行业标准和企业标准的管理集成化。目前,虽然许多部门都对标准的管理做了一些工作,但某些方面做得还不是很完善。通过此系统,可以把有关勘探标准的各种操作集中到一个环境或平台上来进行,这样解决了以前各部门之间没有实现的无缝连接问题。在满足企业管理信息化需求的同时,考虑到标准的特殊性,对查询用户将采取分等级授权,确保查询系统的可靠性、安全性、特殊性。因此,本项目的开发具有重大的使用价值和现实意义。1.1.3网络查询系统的要求在对勘探相关标准(包括国际标准、国家标准、行业标准、集团公司标准、股份公司标准、油田公司标准和企业标准)载体形式、标准数目等情况进行详细调查摸底的基础上,综合考虑目前使用的系统结构、编程语言、数据库形式以及网络安全等因素,列出针对性处理措施,并进行统一规划设计,形成项目实施方案;根据实施方案,开发编写软件程序,形成勘探相关标准网络查询平台。1.2查询系统的功能设计根据对本信息查询系统的要求分析,所需设置如下的功能,见图1-1所示。图1-1系统功能图根据功能的需要可以分成四种不同的类型的用户,即初级用户、中级用户、高级用户和系统管理员,不同类型的用户具有不同的使用权限。登陆时,不同的用户根据系统的用户数据库中存储的用户数据类型加以判断选择,从而实现不同用户所具有的各自功能。根据系统设计的需要,相应的用户具有的权限如下:初级用户只能实现对所需信息的查询和浏览功能,而不能对所需的信息进行选中、复制、粘贴、页面保存、页面打印和word电子文档的下载。中级用户除具有对所需信息进行查询和浏览功能外,还能实现对所需的信息进行选中、复制和粘贴的功能,同时,还可以对信息所在页面的文件进行保存和打印。高级用户除了具有对所需信息进行查询和浏览的功能,对所需的信息进行选中、复制和粘贴的功能,对信息所在页面文件进行保存和打印的功能外,能下载所查询信息的电子word文档,对所需的信息进行word操作;系统管理员是本系统的超级用户,该用户能实现查询系统所具有的所有功能,并完成对用户和数据库的管理。对用户的管理主要体现在对用户的使用权限、用户名及用户口令的设置等;对数据库的管理主要体现在对数据库进行修改、添加和删除。还能通过连接到web服务器上的监控计算机完成对本查询系统的监控功能,对发现有对本系统进行攻击和恶意操作的用户进行剔除,并能对恶意操作的用户进行网络追捕,探测出其ip地址并对其进行封杀;同时系统管理员完成对本系统的功能维护和一些问题的解决。1.3查询系统的方案及主要特点在查询系统的设计中,总体网络采用b/s的网络结构,此结构的前端开发工具采用asp.net和dreamweaver相结合的技术开发用户界面,web服务器采用微软的iis5.x,后台数据库采用oracle数据库,数据库访问技术采用一种最新推出的一种完整的web数据库的解决方案,即asp.net和ado.net相结合的技术,这样的方式连接数据库简单,而且实现的功能强大。如图1-2所示。这样,不同级别的用户可以通过web服务器轻松的对数据库服务器发出请求,完成对所需数据的调用。图1-2 b/s结构figure 1-2 b/s structure根据本系统的设计思想,此系统的设计主要具有以下的一些特点:1本系统的设计是基于.net成功开发应用的基础上,第一次采用2002年推出的asp.net技术开发的信息查询系统;2本系统设计采用最新的asp.net与oracle数据库结合技术完成对本系统的设计。3本系统是国内第一次设计的勘探相关标准查询系统。此系统的设计将克服工作量大、设计复杂等困难,查询的准确率将接近100%,系统的安全性合乎设计标准。4此勘探相关标准查询系统是目前国内勘探相关标准最完备、最具代表性的查询系统,它的设计将为地质勘探标准的查询、地质勘探工作的研究和开展提供最方便的工具。5此系统具有很好的可扩展性,为今后进一步拓展新应用打下基础。由于asp.net的技术的应用,增强了系统的可扩展性,为系统的跨平台使用打下了坚实的基础。同时,它还可以根据系统的发展需要而被扩展,当系统需要扩大建设时,它可以被植入扩展后的系统中独立使用。1.4技术关键(1)信息安全技术信息安全性是一切web应用的重要保证。本系统主要从网络、web服务器和数据库服务器及人为控制等方面的安全策略方面加以考虑。系统总的应用结构为底层信息数据库在tcp/ip局域网上维护,而对数据信息的查询利用查询系统在intranet上实现,因此,本系统服务器组成的局域网可以通过高性能的防火墙实现与企业网络及intranet的互联,尽可能控制外部对服务器的入侵及破坏;另外,利用windows服务器以及web服务器的文件访问控制功能,进一步保证web服务的文档安全性。由于应用中的动态页面是用asp.net技术实现的,所有脚本的解释执行过程全在服务器端完成,返回浏览器端的只是静态的html文档,所以,web应用的源程序相对比较安全。另外,将数据库服务器与web服务器相分离,而且数据库服务器采用标准的登录认证,实现对底层数据库表的存取控制,确保数据库系统的安全性。在人为方面,可以通过ip与用户数据绑定的方式限制不同类型的用户登陆,从而保证数据库服务器的人为破坏;同时,系统管理员可以通过连接到web服务器上的监控端对整个系统的访问进行监控,发现有恶意操作或攻击的,系统管理员可以采取剔除用户、封杀账号或ip、关闭服务等。(2)分等级授权技术根据用户不同的需要及申请方式,系统管理将所有用户划分初级用户、中级用户、高级用户、系统管理员四大类,并可根据用户具有的不同权限进行不同的管理操作。系统根据系统管理员预先设定的登录方式验证ip地址或输入用户名/口令及以两者结合的方式登录。系统管理员可以监测用户在网上的活动,如发现多次查询权限外内容或试图通过本系统侵入数据库的用户,管理员可以禁止用户或用户所在的ip地址使用本系统。(2)分等级授权技术根据用户不同的需要及申请方式,系统管理将所有用户划分初级用户、中级用户、高级用户、系统管理员四大类,并可根据用户具有的不同权限进行不同的管理操作。系统根据系统管理员预先设定的登录方式验证ip地址或输入用户名/口令及以两者结合的方式登录。系统管理员可以监测用户在网上的活动,如发现多次查询权限外内容或试图通过本系统侵入数据库的用户,管理员可以禁止用户或用户所在的ip地址使用本系统。用户ip确认用户权限:可以省略用户输入用户名和密码的步骤,只有指定的计算机有权限进行查询。根据用户名和密码访问:这种方式主要是应用于两类用户,一类用户是与其他人合用一台机器,如采用根据用户确认的话对安全性没有保证,其他使用该台计算机的人员如果使用此用户名也可以拥有相同的权限进行查询。第二类是用户在出差或者以其它方式连入企业网,由于ip地址的不确定导致没有相应的权限进行查询,这时则必须使用用户名/口令进行操作。两种权限控制方式同时使用:这种控制方式是最安全的一种,用户必须在指定的计算机上进行查询,而且必须要输入正确的用户名和密码。(3)asp.net与oracle数据库的结合技术asp.net作为新一代的网络开发工具,可以与asp以前的版本相兼容,因此,它能与sql server进行完善的结合,再加上asp.net本身新增的优点,使其能和众多的数据库系统相结合。但是,在现有的数据库工具中,sql server没有安全认证,并且在其他的许多方面远远不如oracle数据库的性能。因此,在本系统的设计中,拟采用asp.net与oracle数据库相结合的技术,充分发挥二者的优势,以增强此查询系统的实用性。虽然asp.net技术和oracle技术都有成功使用的经验,但二者的结合还属最新技术,因此,本次设计将在asp.net技术与sql server技术完善结合成功开发系统的经验基础上,解决本次系统设计的关键技术。(4)系统的稳定性和可靠性考虑到查询系统需要一个稳定而又可靠的性能环境,因此应首先将web服务器与数据库服务器的硬件平台配置成性能较好的设备并形成主备机,同时将用性能较稳定的windows2000/2003、windows xp或windows nt等操作系统和数据库oracle。另外,由于整个应用系统构筑在ms平台上,web发布平台的任何漏洞都可能成为潜在的隐患,最终导致系统有关进程受到攻击甚至威胁整个服务器的可靠运行。该问题可以及时通过微软网站安装系统补丁、升级平台版本以及设置计算机病毒防火墙等措施加以补救,也可以考虑将整个应用向unix类平台移植,以实现更高的可靠性。从而提高整个查询系统的稳定性和可靠性,并为今后进一步拓展新应用打下基础。(5)系统的实时性系统的实时性是查询系统生存与良好应用关键所在,要体现查询系统的实时性就要考虑系统的响应速度。在软件方面,由于系统中的动态页面是利用2002年2月推出的基于.net的asp.net技术实现的,它利用一种新型的c#程序语言把服务器端的程序代码嵌入到普通html页面中,这种语言具有快速开发的功能,即表现在垃圾收集、指代等特性上。垃圾收集机制将减轻程序运行对内存的带来负荷,而指代功能更是可以让程序在运行过程中不经过内部类就可以调用函数。利用c#的这些功能,可以通过较少的代码来实现更强大的应用程序,并且能够更好地避免错误发生,从而提高系统的实时性。同时,c#可以编写自己的服务器端组件,使用它们可以更自由、更容易地进行数据绑定,这也提高了系统运行的实时性;另外一个值得关注的问题,就是应该加强对数据库表底层数据信息的管理,保证录入数据具有较好的完整性和较高的正确率,从而提高系统的应用质量,提高系统的查询速度。硬件方面,在查询系统的服务器内部之间以及服务器介入internet间采用光纤接入技术,增加数据传输的带宽,减少通道上数据的阻塞。同时,尽可能的减少接入数据库服务器的层次,以增强数据的传输速率。1.5本文所做的主要工作1、对于c#语言、asp.net、oracle数据库及microsoft的数据访问技术ado.net进行研究。2、对于勘探相关标准(包括国家标准、行业标准和企业标准等)进行摸底调查。3、综合系统结构、编程语言、数据库形式以及网络安全等因素,形成项目实施方案。4、根据实施方案,开发编写软件程序,进行测试,发现解决问题。 第二章 网络查询系统总体设计2.1系统功能设计为了更好的检索勘探相关标准信息,方便专业技术人员快速的查阅、浏览信息,查询系统的主体部分将由快速模糊或精确查询和标准体系结构查询两部分组成。为了及时的更新数据和方便数据维护,本系统也着重考虑了数据管理功能,同时为了兼顾系统的安全性,查询系统还应该具有强大的用户管理功能。功能设计如图2-1所示,整个查询系统将由以下部分组成:1、用户注册时只能是临时用户,必须经过管理员授权才能够成为系统正式用户,申请时可以申请任何级别,但必须经过批准;用户注册时的ip地址将和用户信息绑定,该ip地址将不能够再申请用户。2、用户在经过登陆验证后,可以对勘探相关标准信息进行关键词(可以为空)的快速模糊或精确检索查询,并可通过限定标准实施时间、标准所属专业、标准所属类别缩小返回结果范围。3、用户可以对勘探相关标准进行体系结构检索查询。4、管理员可以随时查看用户信息;批准临时用户,并更改临时用户的级别;随时删除正式用户或更改正式用户级别;为系统添加、删除、更改勘探相关标准数据;添加、删除、更改标准体系结构数据。图2-1勘探相关标准查询系统2.2系统结构设计方案比较系统平台模式大体上分为5种:主机终端模式、文件服务器模式、客户机/服务器模式(c/s)、web浏览器/服务器模式(b/s)和混合模式。主机终端模式由于硬件选择有限,硬件投资得不到保证,已被逐步淘汰。而文件服务器模式只适用小规模的局域网,对于用户多、数据量大的情况就会产生网络瓶颈,特别是在互联网上不能满足用户要求。由于这两种模式正濒于被淘汰的情况,所以本系统不予考虑,重点针对后三种模式进行讨论。方案一:c/s模式c/s又称client/server或客户/服务器模式。服务器通常采用高性能的pc、工作站或小型机,并采用大型数据库系统,如oracle、sybase、informix或sql server。客户端需要安装专用的客户端软件。传统的c/s结构一般分为两层:客户端和服务器端。主要应用于局域网时代。其结构如图2-2所示:图2-2 c/s模式结构其基本工作过程是,客户程序向数据服务器发送sql请求,服务器返回数据和结果。客户端负责实现用户接口功能,同时封装了部分或全部的应用逻辑。服务器端的数据库服务器主要提供数据存储功能,也可通过触发器和存储过程提供部分应用逻辑。c/s模式的优点是:首先,交互性强。在c/s中,客户端有一套完整的应用程序,在出错提示、在线帮助等方面都有强大的功能,并且可以在子程序间自由切换。b/s虽然由javascript、vbscript提供了一定的交互能力,但与c/s的一整套客户应用相比是太有限了。其次,c/s模式提供了更安全的存取模式。由于c/s是配对的点对点的结构模式,采用适用于局域网、安全性比较好的网络协议(例如:nt的netbeui协议),安全性可以得到较好的保证。而b/s采用点对多点、多点对多点这种开放的结构模式,并采用tcp/ip这一类运用于internet的开放性协议,其安全性只能靠数据服务器上管理密码的数据库来保证。再次,采用c/s模式将降低网络通信量。b/s采用了逻辑上的三层结构,而在物理上的网络结构仍然是原来的以太网或环形网。这样,第一层与第二层结构之间的通信、第二层与第三层结构之间的通信都需占用同一条网络线路。而c/s只有两层结构,网络通信量只包括client与server之间的通信量。所以,c/s处理大量信息的能力是b/s所无法比拟的。最后,由于c/s在逻辑结构上比b/s少一层,对于相同的任务,c/s完成的速度总比b/s快。使得c/s更利于处理大量数据。c/s模式的缺点是:只适用于局域网。而随着互联网的飞速发展,移动办公和分布式办公越来越普及,这需要我们的系统具有扩展性。这种方式远程访问需要专门的技术,同时要对系统进行专门的设计来处理分布式的数据。客户端需要安装专用的客户端软件。首先涉及到安装的工作量,其次任何一台电脑出问题,如病毒、硬件损坏,都需要进行安装或维护。还有,系统软件升级时,每一台客户机需要重新安装,其维护和升级成本非常高。客户端与数据库服务器数据交换频繁,且数据量大,当大量用户访问时,易造成网络瓶颈。对客户端的操作系统一般也会有限制。可能适应于win98,但不能用于win2000或windows xp。或者不适用于微软新的操作系统等等,更不用说linux、nix等。方案二:b/s模式b/s是指browser/server(浏览器/服务器),即客户端是标准的浏览器(如internet explore,netscape navigator等),服务器端为标准的web服务器协同应用服务器响应浏览器的请求。b/s模式是一种三层结构的系统。其结构如图2-3所示。图2-3 b/s模式结构第一层客户机是用户与整个系统的接口。客户的应用程序精简到一个通用的浏览器软件,如netscape navigator,微软公司的ie等。浏览器将html代码转化成图文并茂的网页。网页还具备一定的交互功能,允许用户在网页提供的申请表上输入信息提交给后台,并提出处理请求。这个后台就是第二层的web服务器。第二层web服务器将启动相应的进程来响应这一请求,并动态生成一串html代码,其中嵌入处理的结果,返回给客户机的浏览器。如果客户机提交的请求包括数据的存取,web服务器还需与数据库服务器协同完成这一处理工作。第三层数据库服务器的任务类似于c/s模式,负责协调不同的web服务器发出的sql请求,管理数据库。b/s模式的优点是:首先它简化了客户端。b/s最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。只要有一台能上网的电脑就能使用,客户端零维护。它无需像c/s模式那样在不同的客户机上安装不同的客户应用程序,而只需安装通用的浏览器软件。这样不但可以节省客户机的硬盘空间与内存,而且使安装过程更加简便。其次,b/s特别适用于网上信息发布。受限于html语言的交互性差问题,输入输出的用户交互界面不能用纯internet技术规范html/http解决,因为internet www技术的主要应用是发布信息而不是输入输出,浏览器是用于浏览而非终端输入输出,所以为了解决浏览器和html页面的交互性差问题,b/s版软件往往在客户端采用微软独家支持的activex技术,这其实是一个由浏览器启动的客户端程序。再次,易于维护和升级。由于用户端无需安装专用的软件,对应用系统进行升级时,只需更新服务器端的软件,实现系统的无缝升级,减轻了系统维护与升级的成本与工作量。最后,系统的扩展非常容易,只要能上网,再由系统管理员分配一个用户名和密码,就可以使用了。甚至可以在线申请,通过公司内部的安全认证(如证书)后,不需要人的参与,系统可以自动分配给用户一个账号进入系统。/结构的不足在于:根据软件任务的不同,有的需要客户端完成大量操作,而浏览器不具备所需的能力。方案三:混合模式c/s与b/s相结合的混合模式吸收了传统的client/server模式和browser/server开发模式的优点,既保留了browser/server模式分布性、开发维护简单性的特点,同时融入了传统模式的特殊能力要求和个性化的设计要求。其结构如图2-4所示。图2-4 c/s与b/s的混合模式结构在这种模式中,根据系统的设计原则,将系统的子功能进行分类,分别采用c/s模式和b/s模式进行处理。适合采用c/s的子功能应具备以下特点:安全性要求高;要求具有较强的交互性;使用范围小,地点固定;要求处理大量数据。适合采用b/s的子功能应具备以下特点:使用范围广,地点灵活;功能变动频繁;安全性、交互性要求不同。c/s与b/s相结合的模式的优点:保证敏感数据的安全性,特别是对数据库的修改和新增记录加强了控制;经济有效地利用企业内部计算机的资源,简化了一部分可以简化的客户端;既保证了复杂功能的交互性,又保证了一般功能的易用与统一;系统维护简便,布局合理;网络效率最高。c/s与b/s相结合的模式的缺点:对web服务器的软硬件要求比较高,由于需要保证服务的安全性以及质量等问题,因此一次性投入比较大。本系统是一个基于web形式的信息查询系统,要求在客户端不安装任何客户端软件,通过浏览器可以查询各种勘探相关标准,其适用范围是面向整个的,而不仅限于一个局域网内部,同时,系统并不需要用户与服务器进行频繁的数据交换,交互性不是很强,因此,c/s模式是不适合本系统设计的,可以考虑的设计模式是方案二和方案三。方案三相对于方案二而言,虽然提高了数据的安全性,增强了用户与服务器的交互能力,但是需要投入的成本也比较大。因此,在考虑性能价格比的情况下,决定采用方案二的设计模式。2.3数据库方案选取对于一个包括数据处理的系统而言,数据库的选择是至关重要的,而在选择数据库的原则上,需要重点考虑的问题有数据库的开发平台、数据库的可移植性、数据库的安全性、数据库容纳的数据量以及数据库的操作。目前常用的数据库有:oracle、db2、sql server。方案一:基于oracle的数据库开发方案开放性:能在所有主流平台上运行(包括windows)。完全支持所有的工业标准,采用完全开放策略。可以是客户选择适合的解决方案,对开发商全力支持。可伸缩性、并行性:平行服务器通过使一组结点共享同一簇中的工作来扩展windows nt的能力,提供高可用性和高伸缩性的簇的解决方案。如果windows nt不能满足需要,用户可以把数据库移到unix中。安全性:获得最高认证级别的iso标准认证。数据量:最大。操作:较复杂,同时提供gui和命令行,在windows nt和unix下操作相同方案二:基于db2的数据库开发方案开放性:能在所有主流平台上运行(windows),最适于海量数据,db2在企业级的应用最为广泛。可伸缩性、并行性:db2具有很好的并行性。db2把数据库管理扩充到了并行的、多节点的环境。数据库分区是数据库的一部分,包含自己的数据、索引、配置文件、和事务日志。 安全性:获得最高认证级别的iso标准认证。数据量:较大。操作:操作简单,同时提供gui和命令行,在windows nt和unix下操作相同。方案三:基于sql server的数据库开发方案开放性:sql server只能在windows上运行,没有丝毫的开放性,操作系统的系统稳定对数据库是十分重要的。windows9x系列产品是偏重于桌面应用,nt server适合中小型企业。而且windows平台的可靠性,安全性和伸缩性是非常有限的。它不象unix那样久经考验,尤其是在处理大数据量的关键业务时。可伸缩性、并行性:并行实施和共存模型并不成熟。很难处理日益增多的用户数和数据卷。伸缩性有限。安全性:没有获得任何安全证书。数据量:中。操作:操作简单,但只有图形界面。本项设计方案的选取主要基于下面几点考虑:(1)油田勘探信息现在所用的是oracle数据库,本项设计采用oracle数据库可保持与已有数据库的一致性;(2)虽然本项设计目前的数据量并不是特别大,但从长远的角度来看,系统的扩容是不可避免的,考虑到系统以后的扩展性,需要选用容量较大的数据库;(3)目前系统的应用平台是windows,为了使系统可以在各种不同的操作平台上运行,系统就必须具有可移植性; (4)安全方面应该获得最高认证级别的iso标准认证。综合以上几点,方案一是最佳的,故选用oracle数据库作为后台数据库。2.4系统工作原理相关标准网络查询系统所采用的系统结构设计方案为b/s模式,所有的功能都将在web服务器上实现,这样在客户端与数据库之间就加入了一个“中间层”,也叫组件层(通常由.cs文件编译而成的dll控件构成),所有的业务规则、数据访问、合法性校验等工作都将放到中间层处理,用户通过在浏览器中输入统一资源定位符(uri)访问查询系统aspx页面(即前端或显示层),通过在前端输入相应的信息,向“中间层”传递参数,web服务器接收请求通过asp.net模块(名为:aspnet_isapi.dll)处理将应答结果传送至客户端浏览器,若需要查询标准信息库,asp.net模块将会通过.net framework中的数据访问技术ado.net访问数据库,这样数据库层通过中间层来连接以及操作,并将动态查询结果经web服务器后以html流的形式返回至客户端浏览器,从而完成信息传递。通常情况下前端(或显示层)不与数据库层进行交互,其工作原理如图2-5所示。图2-5系统工作原理图2.5系统的架构综合考虑勘探相关标准信息查询系统的查询功能、用户功能、管理员功能、维护数据和管理数据等功能,本系统将是一个集注册用户、登陆验证、信息查询、信息浏览下载打印、管理用户、维护数据等多模块于一体的功能完备的系统,其系统架构如图2-6所示。图2-6勘探相关标准信息查询系统架构第3章网络查询系统详细设计3.1 oracle数据库数据表设计3.1.1标准相关数据表设计勘探相关标准查询系统提供关键词检索和体系结构检索两种方式,关键词检索要求匹配标准号和标准名称中某一部分或者全部,检索的同时还可对标准的实施时间、相关专业和所属分类加以限制,从而更加精确的获得检索结果。那么在数据表结构设计过程中,就要把这些都记录在数据表中相应的字段中。在体系结构检索中,要求能够在浏览器上以类似“目录树”的形式显示出勘探相关标准体系结构,为了能够准确的显示出勘探相关标准体系结构,要求在数据库中能够准确的记录出每一条标准所属的一级、二级目录,以及一级、二级目录的名称和编号,并且表结构的设计要完全符合已经制订好的勘探相关标准体系结构表内容。勘探相关标准正文包括大量文字、公式、图片,数据量较大,这就要求后台数据库有存储这些数据的能力,oracle通过它的lob字段实现了该功能,其中blob字段适合存储大量的二进制数据,如图象、视频、音频等,最大存储量为4gb,这就解决了勘探相关标准中的信息完整性和数据量大的问题。在所建立的勘探相关标准数据库中,存有两种类型的数据表,一是用于管理标准信息体系结构数据表的设计,另一是用于实现标准信息数据查询表的设计。由于这两类表的功能和设计对象的区别,对表进行处理时将采用不同的方式,具体设计方法如下:表3-1标准体系结构一级目录数据表设计table 3-1 standard architecture of design level catalogue data sheet表3-2标准体系结构二级目录数据表设计table 3-2 standard architecture of design secondary catalogue data sheet表3-3标准体系结构标准数据表设计table 3-3 standard architecture of design standard data sheet表3-4标准信息数据查询表设计table 3-4 design of standards information enquiry table表3-1中用名称字段表示一级目录名称、编号字段表示以及目录编号,实现一级目录显示,表3-2中名称字段和编号字段功能同表3-1中相应字段,而相应一级目录字段用来定位该二级目录属于哪一个一级目录,表3-3中的相关标准则通过一级目录编号、二级目录编号字段来定位属于哪个一级目录及二级目录。在表3-4中所设计的字段类型中,通过sql命令可以对其中的某一或某几个字段进行检索,实现对某种类型的标准的数据查询,为相关标准检索提供依据。3.1.2用户相关数据表设计在勘探相关标准查询系统中,有三种类型用户,即临时用户、正式用户、管理员用户,若要使用本系统,需要注册用户,注册后成为临时用户,在注册时必须提供必要的信息,以备管理员查看,当管理员认为所填的用户资料满足要求时,便可将临时用户授权为正式用户,当成为正式用户时才具备使用本系统的权限,同时管理员也可以更改用户级别,为了达到这些要求,具体的数据表设计如表3-5、3-6所示:表3-5临时、正式用户数据表设计table 3-5 design of temporary and formal user data sheet表3-6管理员用户数据表设计table 3-6 design of administrator user data sheet3.2数据访问技术ado.net及访问oracle原理ado.net是一组包括在.net框架中的库,用于在.net应用程序的各种数据存储之间通信。ado.net包含了可与数据源连接、提交查询并处理结果的类。还可以将ado.net作为一种强壮、层次化的、断开连接的数据缓存来使用,以处理脱机数据。ado.net对象层次结构如图3-1所示。oracle调用接口(oracle call interface,oci)是oracle数据库的一个接口,它处于一个非常低的层次,因此可以提供最好的性能,并支持一整套公共数据库功能。.net framework的一个优点就是它能够编写调用动态链接库(dll)的规范并能够直接调用dll入口点。windows平台下的oracle将oci实现为一个dll(oci.dll)。因此.net应用程序能够通过简单地为入口点编写一个规范来完成一个oci调用并调用其函数。图3-1 ado.net对象层次结构图figure 3-1 ado.net object level chart3.3用户部分3.3.1注册用户注册用户时,需将用户信息写入数据库中,并判断是否会出现有重名注册或相同ip重复注册的现象,具体代码如下:conn string=configuration settings. app settingsconnectionstring;string sql string=select username from userbiao whereusername=+user name. text+union all select username from tempbiaowhere username=+user name.text+;oracle connection my connection=new oracle connection(conn string);oracle command my command=new oracle command(sql string, my connection);my connection .open();oracle data reader my data reader=my command .execute reader();if (my data reader. read()=true)my connection. close( );response. write(alert(该用户已经存在,请您更改用户名!);user name. text=null;return;elsemy connection. close();string ipstring=select ip from userbiao where ip=+ip.text+union allselect ip from tempbiao where ip=+ip.text+;oracle command cmd =new oracle command(ipstring, my connection);my connection. open();oracle data reader ip data reader=cmd. execute reader();if (ip data reader. read()=true)my connection. close();response. write(alert(您已经用该台计算机注册过,请您更换计算机再次注册!);将用户信息写入数据库中的代码可参见附录。3.3.2用户登陆用户登陆主要是验证用户所提供的用户名和密码是否与数据库中一致,同时验证用户机器的ip地址是否与数据库中一致,具体代码见附录。3.3.3用户管理当管理员管理用户时,需查看用户的注册信息,这样就要求将数据库中的信息在浏览器中显示出来,并且能够方便管理员进行操作,.net framework中提供的datagrid web服务器控件能够呈现表格式数据绑定网格,并且允许自定义各种类型的列,这些列有的用于控制网格的单元格内容的布局,如绑定列和模板列;有的用于添加特定功能,如编辑按钮列和超级链接列等。该控件还支持各种用于在数据中进行分页的选项,这完全满足系统要求,主要的html代码如下:/在此设置data grid相应的事件和属性/数据绑定列初级中级高级/模板列可以添加自定义功能,并可实现控件的嵌套使用 当管理员执行操作时,若要更改用户级别,通过捕捉data grid command event args事件,获取data grid中嵌套的drop down list控件中的信息,更新数据库记载的信息,从而实现用户级别的改变;若要删除用户时,通过遍历data grid控件所有的行,判断嵌套控件check box的checked属性判断是否被管理员选中,若被选中,则获取改行中的用户名信息,在数据库中执行sql命令:delete from userbiao whereusername=+user+完成对数据库的操作,具体原理参见数据访问技术ado.net。3.4关键词检索的实现3.4.1 sql语句sql(structured query language)语言是1974年由boyce和chamberlin提出的,它是一种非过程化的语言,由于它功能丰富语言简捷倍受用户及计算机工业界欢迎,sql是一种介于关系代数与关系演算之间的结构化查询语言,其功能并不仅仅是查询。sql是一个通用的,功能极强的关系数据库
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 美术毕业设计展示
- 2025年事业单位工勤技能-湖南-湖南房管员四级(中级工)历年参考题库含答案解析
- 2025年事业单位工勤技能-湖南-湖南医技工五级(初级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-湖北-湖北铸造工五级(初级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-湖北-湖北放射技术员四级(中级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-湖北-湖北广播电视天线工一级(高级技师)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-湖北-湖北图书资料员四级(中级工)历年参考题库典型考点含答案解析
- 2025年保险行业数字化理赔服务与保险理赔服务体验优化报告
- 2025年沉浸式戏剧行业市场趋势与消费者行为分析报告
- 2025年事业单位工勤技能-海南-海南房管员四级(中级工)历年参考题库含答案解析
- 2024年10月中级注册安全工程师《金属冶炼安全》真题及答案
- 《高值医用耗材临床应用点评制度》
- 图书分类与管理制度
- 探索数字化技术在博物馆藏品保护与展示中的创新应用
- 康复治疗过程中突发事件的应急预案和处理流程
- 应急调度员电话压力疏导
- 农户建筑垃圾管理制度
- 2025年烟花爆竹安全作业特种操作证考试试卷备考建议
- 学校快递驿站管理制度
- 四川电网新建电源并网服务指南(2025年)
- 补产假工资协议书
评论
0/150
提交评论