登陆注册
6296000000023

第23章 网络财务系统中的动态数据库技术

随着网络的发展,网络技术中的重要组成部分——Web数据库也逐渐显示出它的重要性。网络财务与Web数据库紧密联系,伴随着近几年有关网络财务系统工程研究与实践在我国的兴起,Web数据库技术已经成为网络财务系统建设中不可或缺的重要技术。在网络财务系统中,需要将Web技术与数据库技术有机地结合在一起,充分利用数据库系统的信息资源,形成一个能在Internet/Intranet上组织管理信息资源并能迅速检索、查询的网络财务系统。这种Web网页与数据库系统的连接及其他们之间的交互,亦即Web数据库的存取技术已成为基于Web的数据库系统开发中所面临的重要课题。

5.3.1Web数据库简介

5.3.1.1 什么是Web数据库

数据库中存储的资料可以通过多种渠道加以利用:在单机上供个人使用的数据库称为单用户数据库;在局域网上供小范围的多人使用的数据库称为多用户数据库;通过Internet/Intranet等在非常广大的范围内供用户使用的数据库就是Web数据库。

5.3.1.2 Web数据库的优点

(1)使用方便数据库应用一般是采用客户机/服务器(C/S)模式,有一个客户端和一个服务器端,客户端向服务器端发出资料请求,服务器响应并处理请求,把处理的结果再回送到发出请求的客户端。传统的数据库应用需要为每一个应用开发一个客户端,然后再在每一个客户端安装,还要加以培训才能使用;而Web数据库的客户端由浏览器担任,不需要单独开发也不需要培训。

(2)开发统一传统的数据库应用一般是用VB、VC、Power Bui1der、De1phi等开发,这些开发工具各有各的标准和方法,不适合开发Web数据库;Web数据库的开发使用统一标准HTML,任何人开发的Web数据库都要符合这个标准。这就使得Web数据库具有了强大的适应性。

(3)跨平台支持传统数据库应用一般要针对每一个操作系统开发一个专用版本,甚至要为不同的硬件平台开发不同的版本;对于Web数据库,只要在某个平台上具有符合HTML标准的浏览器就可以在所有的操作系统和硬件平台上使用同一个版本的Web数据库。

5.3.1.3 Web数据库的模式

由于Web数据库的特殊要求,传统的客户机/服务器(C/S)模式的那种为客户机安装前端应用程序的方法已不再现实,这是因为客户机的工作环境是千变万化的,工作地点也不同。于是基于浏览器/服务器(B/S)模式的系统应运而生,它继承了C/S模式的优点,不受具体操作系统和硬件的制约。

目前应用广泛的B/S模式系统主要是通过浏览器以超文本的形式向Web服务器提出访问数据库的请求,Web服务器接受客户请求后,激活对应的应用程序将超文本HTML语言转化为SQL语言,并将这个请求交给数据库,数据库服务器得到请求后,验证其合法性,并进行数据处理,然后将处理结果集返回给应用程序,应用程序再将结果集转化为HTML,并由Web服务器转发给请求方的浏览器。

在B/S模式中,客户端的标准配置是浏览器,如Internet Exp1orer;业务处理功能从C/S代码中彻底分离出来,由独立的应用服务器处理,Web服务器成为应用处理的标准配置;数据处理由数据库服务器完成。B/S模式是三层分布结构,即Web浏览器——Web服务器——数据库服务器。

5.3.1.4 Web上的数据库

如果你想构造有用的、用户界面良好的数据库应用程序,除了使用数据库厂商提供的工具,或自己独立编程之外,能靠Web浏览器和填表就完成用户界面的构造任务无疑会受到广泛的欢迎。

利用Web访问数据库的过程如下。

用户通过填写表格(以HTML创建)来执行查询和数据请求。他们可以通过菜单的选择,单击按钮,填写数据来输入进行后台数据库查询所需的关键字。

CGI脚本程序把输入到表格的信息提取出来,并把它组织成为有效的SQL查询,随后CGI脚本将其发送到数据库后台。

同一个CGI脚本程序在数据库引擎对数据进行处理之后接收结果。脚本程序会把结果以HTML格式传回到用户的Web浏览器上,以显示给用户阅读。

(1)ORACLE数据库应用程序网关ORACLE的Web系统是一个范围广泛的程序包,包括ORACLE数据库服务器,一个增强的HttpD服务器,Web浏览器,一个称为Web Agent的用户开发软件和称为Web Listener的连接件(中间件)。

(2)SYBASE数据库应用程序网关SYBASE公司通过对HTML的专用扩展来实现Web对数据库的访问。产品名称为Web。SQL,它允许Web页面包含有可指向特殊HTS格式文件的超级链接,并直接将它存储在SYBASE数据库中。

(3)INFORMIX应用程序网关INFORMIX有两种Web接口工具:INFORMIX-ESQL/C和INFORMIX-4GL,当然你必须有基本的INFORMIX数据库应用程序。所有这两个工具都是基于CGI标准的。

(4)Microsoft的Web中间件产品用Microsoft公司的IIS和ODBC,可以:

1)创建包含有数据库中信息的Web页面。

2)从Web页面基于用户输入插入、修改和删除数据库的信息。

3)执行其他SQL命令。

5.3.2 基于Web的动态数据库访问技术

目前,实现Web数据库的访问一般可以采用两种做法:一种是在Web服务器端提供中间件来连接Web服务器和数据库服务器;另一种是把应用程序下载到客户端,在客户端直接访问数据库。

中间件负责管理Web服务器和数据库服务器之间的通信并提供应用程序服务,它能够直接访问数据库或调用外部程序或利用脚本代码来访问数据库,因此它可以提供与数据库相关的动态HTML页面,或执行用户查询,并将查询结果格式化成HTML页面,然后通过Web服务器返回给用户浏览器。最基本的中间件技术有通用网关接口(CGI)和服务器应用编程接口(Server API)。

除了在Web服务器端采用中间件以外,还可以通过Web浏览器把应用程序下载到客户端运行,在客户端直接访问数据库。客户端应用包括:Java App1et、Active X、P1ug-in等,其中最典型的就是Java App1et。利用Java App1et可以方便地实现与用户的交互,还能提供丰富的图形功能和声音、视频等多媒体功能。特别是由于Java是一种与平台无关的编程语言,因而具有极强的可移植性。在Java App1et中访问数据库,可以使用JDBC(Java Database Connectivity)技术,通过JDBC提供的API实现对分布在网上的不同数据库的各种操作。另外还可以把对数据库的访问转交给专用服务器来完成,Java App1et通过与专用服务器的Socket通信来传递数据库操作的请求和结果。

一般情况下,当我们通过浏览器浏览发布财务信息的网页,进入信息查询的服务页,在搜索下拉列表中选择了“单位”后,便会出现“中文系”、“数学系”等单位,在其后的“单位名称”下拉列表中选择了“数学系”,点击“确定”,一会儿,在下面的空表格中,就出现了单位的经费项目、指标分配、支出明细等我们希望了解的信息。这种服务是如何实现的呢?其实,这就是动态Web数据库应用的一个简单例子。

下面将重点讨论利用Web服务器端提供的中间件连接Web服务器和数据库服务器的几种方法,这也是网络财务系统设计中所使用的动态数据库访问技术。

5.3.2.1 CGI

CGI(Common Gateway Interface,公共网关接口)是外部应用程序与Web服务器间的接口标准,利用它可以将数据库与Word Wide Web集成,实现动态Web数据库应用。

,CGI应用的流程为:客户端通过IE等浏览器在表格中输入数据库查询条件(或其他要求),并提交给Web服务器;服务器将查询条件及客户信息置于标准输入或一组环境变量中,并运行相应的CGI程序;CGI程序依标准输入或环境变量向数据库服务器提出查询要求,执行相应的SQL语句;数据库服务器返回结果给Web服务器,并通过HTML页面返回客户浏览器。

CGI程序用诸如VB、C/C++、PERL等多种语言可以编写,且因CGI比较通用,使得其在DOS、Windows 9X、Windows NT、UNIX等操作系统上皆可运行,几乎所有的Web服务器都支持CGI。但是CGI程序的开发需要一些底层开发经验,故难度加大。同时,CGI一般都为一个独立的可执行程序,每当客户端输入一个请求时,就必须激活一个CGI进程,这样用户的增加必然会大大剥夺系统资源,使得Web服务器的效能降低。

CGI可以说是一种最通用的动态Web数据库应用方式,发展也最为成熟,历史也最为悠久,并且也已经得到广泛的应用,但其效率低、编程难一直是最大困扰。

5.3.2.2 JDBC

JDBC(Java Database Connectivity)是Java soft 公司制定的Java 与数据库的互联API(App1ication Programming Interface,应用程序接口),支持SQL。由于其在不同数据库层次上提供了一个统一的接口,故使得Java 程序员轻松实现了动态Web数据库应用。

还是说说Java 吧!

Java 是SUN的一种面向对象的编程语言,具有安全、简单、自动下载到网络等优点,是近年最火的网络编程工具之一,被广泛应用于Internet/Intranet。

JDBC有两个层次,一个是面向程序员的JDBC API,一个是底层的JDBC Diver API。JDBC API在Java。SQL 包中定义,包括JDBC API用到的类、接口与方法;而JDBC Diver API则用来解释执行SQL语句并返回结果。

JDBC应用的流程为:用户通过IE等浏览器下载Web服务器上的含Java App1et的HTML页面;然后调用了JDBC的Java App1et与数据库相连;并通过JDBC API访问JDBC Diver API,对数据库进行操作,返回结果。

总之,JDBC是一种十分适合于Java 程序员的动态Web数据库应用方式,也由于Java 的广泛应用而被大大推广,而且它的多平台支持、安全性也令人神往,但速度不算很快。

5.3.2.3 IDC

IDC(Internet Database Connector,Internet数据库连接器)是Microsoft提供的一个API,实质上是基于Microsoft的Web服务器IIS(Internet Information Server)的一个ISAPI(Internet Server API)应用程序HTTPODBC。d11.它可通过ODBC接口访问各种各样的数据库。

IDC使用两种文件来控制数据库操作和返回HTML页面。一种是。IDC,它包括连接ODBC资料源的信息、需执行的SQL语句(如SELECT*FROM student-db等)和。htx文件名及路径。另一种是。htx,它是HTML扩展文件,依IDC执行的SQL语句的查询结果构造出HTML文件返回用户浏览器。

IDC应用的流程为:用户通过IE等浏览器发出查询要求,Web服务器IIS接收;IIS装载HTTPODBC。dll,并给予查询要求;HTTPODBC。dll读取IDC文件,形成完整的SQL语句,并装载ODBC驱动程序,与数据库连接,执行查询;HTTPODBC。dll读IDC中指定路径指定的。htx 文件,生成包括查询结果的HTML文档,并返回IIS,再返回用户浏览器。

IDC是针对CGI的低效率而提出的一种基于ISAPI的动态Web数据库应用技术。因其以动态链接库(DLL)的形式存在,在启动时被加入内存,和Web服务器处于同一进程空间,故占用系统资源少、执行效率高。但由于其基于Microsoft的IIS,故跨平台性相当差。另外,IDC的编程相当容易,只需掌握一定的HTML与SQL语言就可设计出良好的。htx和。IDC文件,适用于简单的Web数据库应用开发。

5.3.2.4 ASP

ASP(Active Server Pages,动态服务器页面)是基于Microsoft Windows NT4.0和IIS3.0/4.0或Personal Web Server on Win9X的开放式脚本开发环境,是新一代动态Web数据库应用开发方案。利用它可以实现复杂的Web应用,开发动态、高效、交互的Web服务器端应用程序。它有如下特点。

(1)完全与HTML相融合,因此使开发变得相当容易,而且灵活性得以提高。

(2)ASP能利用任何脚本语言,如VBScript(默认脚本语言)和Java Script等。

(3)ASP的制作工具可用纯文本编辑器(如Notepad),但专业开发人员一般用Microsoft 的Visua1 InterDev6.0.

(4)ASP是文本文件,扩展名为。ASP,包括文本、HTML标记(如和等)和ASP文件特有的脚本语句(用)括起来)。

(5)支持面向对象。

(6)利用ASP开发出的脚本程序运行在服务器端,所以它对浏览器的种类没有限制,而且也防止了原程序被偷看,提高了安全性。

(7)支持多用户、多线程。

(8)ASP采用ADO(ActiveX Data Objects)组件,通过ODBC驱动程序连接数据库。

ASP应用的流程为:IE等浏览器向Web服务器递交查询,申请访问一个ASP文件;Web服务器调用ASP文件并执行;用ADO组件通过ODBC访问数据库,将结果传递到用户浏览器。

ASP是一种十分具有发展前途的动态Web数据库应用技术。在许多网站就时常可见。ASP的URL,而且也有许多用ASP建立的聊天室。

ASP提供了五个内建对象:Request、Response、Sever、Session和App1ication,相当于已经封装好的类,它们给客户访问各种资源提供了极大的方便。

同类推荐
  • 公正是最大的动力

    公正是最大的动力

    激发员工最大的动力是什么?这是很多企业都十分关心的问题。很长一段时间以来,人们普遍认为,薪水是最大的动力。因此,大多数企业都把薪酬作为激发员工的第一动力。管理者通过提高薪酬待遇从外单位聘请优秀人才,对本企业内业绩突出的人才施以重金。但本书作者却认为是公正。下面,就让我们看看作者到底是怎么阐述这一理由的。
  • 全世界最贵的总裁管理课:杰克·韦尔奇的秘诀

    全世界最贵的总裁管理课:杰克·韦尔奇的秘诀

    本书以杰克·韦尔奇的管理生涯为脉络,介绍了杰克·韦尔奇塑造个人领导魅力的法则,分享了让下属保持高效、高度负责的方法,内容涉及商务活动的诸多层面,包括商业的要旨、企业领导的管理智慧、普通员工的求职与晋升之道,以及如何实现工作与生活的平衡。无论是大公司,还是小企业,无论是基层员工、毕业大学生,还是项目经理、企业高管,都能从韦尔奇的经验中受益匪浅。
  • 每天学点销售学全集

    每天学点销售学全集

    销售很简单,只需要你有决心,有毅力;销售不简单,有时候需要你考虑很多方面。本书将向你揭示成功销售员的成功秘诀,你不必花费太多时间和精力,只需每天付出一点点,最终就能够通过本书成为一个优秀的销售员。不要再等待了,踏上优秀销售员的第一步吧!
  • 销售与口才知识全集

    销售与口才知识全集

    本书正是针对销售人员的这种口才上的现实需求,有针对性地对相关领域内的知识进行了优化设计与重组,在内容编排与语言表达上也更适合销售人群的需要。全书共分销售口才的基本修炼与销售口才的实践两大部分,而本书的基本修炼与实践内容部分之间却又没有严格的界限,理论中包含着实践,实践中又不乏理论的支撑。之所以如此安排全书的内容,是为了更好地提升销售人员的口才技能,而非一味地追求结构上的严整,因为服务销售人员并提高其口才技能,才是本书的根本宗旨的所在。
  • 总经理把私营公司做大做强的288条妙计

    总经理把私营公司做大做强的288条妙计

    本书从中外成功的公司经理身上选取、总结具有代表性、说服力且具有实战性的身例和方法加以分析,指导读者如何才能让私营公司不断发展、做大做强。
热门推荐
  • TFBOYS之为了你

    TFBOYS之为了你

    三个富家小姐为了偶像转向重庆,却与他们一见钟情,当吃货遇上吃货,高冷遇上高冷,暖男遇上暖阳。会有怎样的爱情的火花在他们之间燃烧呢?本作者这也是第一次写小说,本来是突发奇想,结果就一不小心写了许多,呵呵。三小只最后的结局不会虐心的,不然本草草也会心疼的。废话不多说,想要了解自己去看啊!
  • 女配逆袭:男主男配别想跑

    女配逆袭:男主男配别想跑

    樱百雪在死了之后,被一个自称“豆豆”系统给“捡到”,从而让她完成个个不同的任务,使自己复活,可是还没等她完成完,结果系统被不知明东西给袭击,让樱百雪失去了原本的记忆,跌入不完善的界面,那么她将来怎么办呢?…………【本作者凑不要脸的宣~群:122852465】
  • 嫁得好不如干得好

    嫁得好不如干得好

    本书共分十章,内容包括嫁得好,干得好,哪个更好女人,你必须学会自立自强自信让女人干得更好干得好的女人活得更有尊严干得好的女人都是有梦想的女人等。
  • 旋风少女:5

    旋风少女:5

    该书根据著名作家明晓溪改编,若白、百草的爱情能否长长久久
  • 囚徒十年

    囚徒十年

    年少时的阴影,纠缠了她一生。十年了,不管她的身份如何变换,她都无法从那天的血雨中走出来……
  • 战国谋女姬念雪

    战国谋女姬念雪

    一觉醒来,意外得知未婚夫要结婚了,新娘还不是她!为了找回未婚夫,在途中不幸空难。她以为必死无疑,却不料穿越到了战国,还成了魏国公主!从此展开多彩的生活:宫斗,修仙,捉妖降魔……
  • 仙珠坛

    仙珠坛

    风成淇:你我本是血脉相通的骨肉手足,但在记忆的刀光剑影里,却没有你的影子。我将你寻得,约定兄弟一齐,踏遍江山,剑指天涯,可你却自此杳无音讯,仿佛这天下,再也没有了你的音容笑貌---我断剑重铸,在仙珠坛前伫剑而立,在这你曾焚身的地方守望千年,而你,还能否回到我眼前,听我再唤你一声,哥哥……赤三娘:我爱的人是你,——而你却不是你。你像是满天星斗里最明亮最灿烂的一颗,可望却不可及。你活着,却如同死亡一般;你死了,却永远活在我心里。纵使相思入骨,纵使万劫不复,千年之后再见到你,依然,眉眼如初。
  • 宙巢

    宙巢

    血雨腥风独存身,不予豁达但善人。感呕那消万焚容,独霸鳌头假髓真。大千世界繁复多变,宙巢衍生无穷光华。逆天修仙者摘星移月,高纬智慧生命强解终焉奥秘。合众连横多元的先行神明制霸天下,后起觉醒的土著不甘凌辱抵挡高位次元侵略,更有偶然的穿越观光客侥幸成神。其中理念智慧的延续,真理之缪的除伪,夹杂着无数位面的兴衰。奋起或沉沦只在刹那间,智慧生命宛如渺小的虫豸随势奔流。历史浪花无情,滚滚而逝。穿越机遇垂青下,看陈风如何独善身,罢血雨,挑业身,排山倒海成髓真。
  • 时间是握不住的沙

    时间是握不住的沙

    时间是握不住的沙,不管你有没有感觉到,它都一直在静静地、静静地流逝。当你察觉时,会发现我们早已不再当年,如手中沙般流逝的那些人、那些事,终将变成回忆。
  • 大千世界衍生诀

    大千世界衍生诀

    因系统问题,转移链接!请搜索:大千世界衍生诀之我主春秋