登陆注册
10499900000023

第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,相当于已经封装好的类,它们给客户访问各种资源提供了极大的方便。

同类推荐
  • 基于实现企业组织和谐的治理研究

    基于实现企业组织和谐的治理研究

    本书主要内容包括:企业和谐治理源起、企业股东与经理间的利益冲突及其治理、企业股东之间的利益冲突及其治理、企业资方与劳方之间的利益冲突与治理等。
  • 做最好的推销员

    做最好的推销员

    本书内容包括:推销产品先要推销自己、推销新人的第一课、成功推销员的信念与心态、成功推销员要有成功的人际关系、把握优效的推销方式等。
  • 这才是最牛团队:从携程到如家、汉庭I

    这才是最牛团队:从携程到如家、汉庭I

    本书用小说的语言真实地再现了携程这个完美的团队如何从无到有、从有到辉煌的全部发展过程,深入浅出地总结了携程成功的原因。在本书中,我们可以看到携程在创业之初如何选择团队成员、如何融资、如何转型收购找到赚钱最佳途径,又如何在公司发展壮大时上市,通过纳斯达克造富游戏实现财富飞跃。本书是一个教学案例,也是一种新文体。书中每一章都由语录、寓言、正文、小结、应用等五个部分组成,既有小说那样的生动故事,也有教科书那样的理论分析,让你在精彩的故事中学会如何打造最牛团队。
  • 现代公司员工福利计划方案设计

    现代公司员工福利计划方案设计

    最实用、最权威的员工福利方案手册。你是否在为员工的懒散懈怠而苦恼?或者在员工福利上投入了很大财力却仍听到下属的抱怨?一场以小博大的投资,以有限的投入带来员工无限潜力的挖掘,给企业带来无穷的长期收入。有了合理的员工福利计划方案,企业的腾飞不再是梦想!
  • 没有如果,只讲结果

    没有如果,只讲结果

    打造不找借口的落实型员工,全面提升组织成员的执行力。杜绝即可,医治职场借口弊病,创造价值,锻造一流执行团队的终极宝典。
热门推荐
  • 修成正果

    修成正果

    青春最容易遇见心动,用所有的一念执着不过是为了换那句非你不可。钟漠:钱茈情?她是我见过最别扭的女生。钱茈情:钟漠?他能离我远一点儿吗?
  • 娱乐休闲英语口语即学即用

    娱乐休闲英语口语即学即用

    在当今紧张的工作之余,人们总是争取大量的空闲时间来休闲娱乐。在各种娱乐场合,人与人之间容易增进感情,加深关系,促进交往。书中每个单元都设有与内容相关的简单句型结构和短语,并配有多个例句和汉语翻译,便于读者套用和练习。每章开篇都为读者提供了该主题所蕴含的文化背景,方便读者对语言文化的学习。
  • 佣兵之王

    佣兵之王

    公元2495年,一块新出土的石刻与命运之轮相契,神之时间启。主角轩辕靖的灵魂随之跨越无尽虚空,回到数十亿年前的远古大陆,一曲命运之旅正式开始。在这里有花俏艳丽的魔法,克敌制胜的斗气,甚至还有神秘异常的炼金术,且看他怎样遨游异世?
  • 恕臣有二心

    恕臣有二心

    在一个没有便宜制造便宜也要占便宜的流氓皇帝面前,若说我没有二心,那必是假的。微博:连翘在当地算美貌且较有才/群374315650
  • 点灯问鬼2

    点灯问鬼2

    凶山藏凶魅,恶水生恶灵,万物自有道,诸邪莫相欺!————————————————————————————————————人心浮突,难免一念之差失足千古,自以为蒙得天眼,不知早已种下因果劫数。是故,尘世间种种偶合,看似荒诞难稽,实为世眼迷离,不谙机数。一言试之,恩怨得偿而已,岂有他耳?————————————————————————————————————点灯,审阴问案,追溯阴阳恩怨,看透世人种种,每一段鬼谈怪论背后是人心凶险……
  • 相亲九十九次

    相亲九十九次

    堂堂陈氏集团掌门,号称千杯不醉,横跨黑白两道无人能敌,竟然被容貌清纯的电台女DJ给灌醉了!相亲九十九次未遂的清纯女DJ惹上腹黑流氓,看来这辈子是别想嫁出去了!
  • 总裁很腹黑:姑娘别嚣张

    总裁很腹黑:姑娘别嚣张

    作为一个刚出狱又刚出院的穷光蛋,罗熙不想谈情说爱,只想发笔横财,可是偏偏遇上腹黑大BOSS。一夜春宵,本以为我们之间的债务一笔勾销。却不成想这腹黑男人要把我卖了。某天清晨,罗熙揉着酸痛的腰终于受不了压迫,大吼:“姓顾的,老娘不干了,你丫的爱找谁找谁!”顾行深倚在床头一脸酒足饭饱的样子,笑道:“除了你我谁都不要。”“滚犊子!”罗熙一脚向他腰上踢去。顾行深一把抓住她的脚,翻身把她压在身下,“看来我还没有满足你。”“不……救……”
  • 无极宝三昧经

    无极宝三昧经

    本书为公版书,为不受著作权法限制的作家、艺术家及其它人士发布的作品,供广大读者阅读交流。汇聚授权电子版权。
  • 玄门报孝追荐仪

    玄门报孝追荐仪

    本书为公版书,为不受著作权法限制的作家、艺术家及其它人士发布的作品,供广大读者阅读交流。
  • 魔妃来袭—风流夫君请接招

    魔妃来袭—风流夫君请接招

    她凌倾颜不过是想平平凡凡过一生而已,可是为什么这么个要求都老天都不答应?!现代身为特工就特工吧,偏偏还莫名其妙就穿越了?!穿越就穿越吧,偏偏还穿越成了怪病缠身的吸血鬼?!上天这是要闹哪样?!给她一个夫君吧,偏偏夫君还是个酷爱拈花惹草的王爷!给她一个仆人吧,偏偏还是个心怀鬼胎的丫头!悲催如她,平凡的愿望算是彻底落空了,那就好好在这鸟不拉屎鸡不生蛋的破地方闹出点风波来吧!【轻浅的第一篇文文呀!新人写文求支持,此“嗜血魔妃”非彼“嗜血魔妃”,介意者慎入,谢谢。如果喜欢的话,就收藏一个吧,宝贵的票票我也不奢求。不要脸的说一句,千万不要喷我,不要喷我,不要喷我!重要的事情要说三遍!】