摘要:数据库技术经历了几代的发展模式,现在普遍应用的是b/s模式,本文对这种模式进行了比较深入的分析。
关键词:web;数据库;b/s
1 引言
随着internet技术的快速发展,web数据库现已成为解决数据存储和数据处理的主流和核心技术。与传统数据库相比,现今的数据库面临着四个方面的变化,即数据容量的变化:数据量的急剧增长使数据库技术面临一个海量数据的管理问题;数据内容的变化:数据的内容呈现一个多方位的体现形式,要处理的数据的表现形式越来越丰富,也越来越复杂;系统本身的变化:系统体系结构的变化对数据库系统本身的系统结构和数据处理能力也提出了更新的要求;数据应用的变化:数据应用呈现出多样化的空间,如电子图书馆、电子政务,电子商务、网络教育等给数据库技术提出了新的问题纵观整个数据库信息系统平台的发展过程,先后共产生了以下四种模式:主机终端模式、文件服务器模式、客户机/服务器模式(client/server即c/s模式),浏览器/服务器模式(browser/server即b/s模式)。其中,b/s模式是将web技术与数据库管理系统(dbms)有机融合在一起,充分发挥dbms高效的数据
存储和管理能力和web的易维护性,利用了大量已有的数据库信息资源,使用户可以在ie浏
览器上就能够方便地查询和浏览数据库中的内容。所以,采用基于web的数据库技术,开发;
动态的web数据库应用已成为当今web技术研究的热点和主流,许多基于大型数据库的信息
系统正在采用这种全新的技术模式。WWW.133229.cOM
2 b/s模式的结构和工作原理
2.1 b/s模式的体系结构
基于web的系统实际上是由两层c/s结构演变而来,其结构由浏览器、web服务器+中间件和数据库服务器三个逻辑单元等共同组成。将web的强大信息服务能力与数据库系统的数据管理能力有机地结合在一起,充分发挥各自的优点,避免各自固有的缺陷,从而起到事半功倍的效果。在该模式的系统中,所有数据都由现有的数据库技术存储与操作,客户机使用ie浏览器向服务器提出请求并即时返回查询结果。在web与数据库集成系统中,最核心
的部件就是web数据库网关。web数据库网关通过访问dbms系统,来完成用web技术表达的用户请求。
2.2 b/s模式的工作原理
在b/s模式中,客户端首先运行浏览器软件(如ie等)。浏览器以超文本形式向web服务器提出访问数据库的请求,web服务器在接受到客户端请求后,通过数据库网关,将这个请求转化为sql语法,并交给数据库服务器,数据库服务器得到请求后,验证其合法性,并进行数据处理,处理完毕之后,将结果返回给web服务器,web服务器再一次将得到的所有结果进行转化,并变成html文档形式,转发给客户端浏览器以web页面形式显示出来,从而客户端得到所需的结果。当然,浏览器也会将更新、修改、删除、增加数据记录的请求申请到web服务器,web服务器通过数据库网关与数据库建立关联从而完成这些工作。
3 中间件连接web服务器和数据库服务器的几种方法
3.1 通用网关接口(cgi)
通用网关接口是最早出现的较为常用的一种web访问数据库的技术。cgi应用程序可由web浏览器通过填写html表单或单击web服务器上的html页面中的链接来启动。cgi应用程序可获取web浏览器提供的信息和数据库中的信息,并且可以使用任何一种语言(如f0rtran,c等)编写应用程序。web服务器执行cgi应用程序后,将程序执行的结果返回到html页面中便于客户机浏览,或将信息传递到数据库中。用户通过ie浏览器以html形式向web服务器提出访问数据库的请求,web服务器得到请求后,激活相应的cgi程序,cgi程序将html语言转化为sql语言文本,同时将请求递交给数据库管理系统,数据库管理系统得到请求后,首先验证其合法性,然后将操作的数据结果转给cgi程序,cgi程序再将这个结果转化为html,并由web服务器转发给web浏览器。这就是cgi访问数据库的工作原理。cgi具有很强的跨平台特点,几乎可以在任何操作系统和web服务器上实现。
cgi的主要缺点是程序开发困难,效率低和程序的应用层次不分明,系统的安全性也不太高,容易受到攻击而导致系统瘫痪。
3.2 服务器应用编程接口(server api)
针对cgi运行效率低、编程困难等问题,web服务器软件开发商设计了满足各自的服务器api,如microsoft公司的web服务器产品iis,它提供isapi作为扩展web服务器功能的编程接口,同时它还提供一个internet数据库连接器(idc),实现对数据库的查询和更新。在microsoft公司的另一个产品microsoft visualinterdev中,还提出了用asp作为实现web应用的方案;netscape公司在其web服务器中引进了应用程序编程接口nsapi,设计人员利用它可以扩展服务器的功能。
4 b/s模式的数据库管理系统的常用开发技术
4.1 asp技术
asp是microsoft公司发布的一个web服务器端的开发环境,利用它可以运行动态的、交互的web服务器应用程序。它的运行环境是microsoft的iis(windows nt及windows xp等环境)或pws(personal web server,windows95/98等环境),但它不能运行在非microsoft系列的操作环境下,从而无法实现真正的跨平台设计和使用。asp不但可以进行复杂的数据库操作,而且可以生成交互性很强的动态页面,用户可以方便地控制和管理数据。asp是把脚本语言(vbscript或java script)嵌在html文档里,当客户端使用浏览器浏览网页时,服务器会激活编译程序引擎对其进行编译,生成标准的html标记语言并返回给客户端,所有的数据处理都在服务器端进行,由asp程序来完成,用户只需要一个标准的浏览器(如internet expl0rer、netscape communicator、opera或kidexplorer等)即可。
4.2 php技术
php是一种跨平台的服务器端的嵌人式脚本语言。与其他中间件技术相比,php可扩展性好、开发代码快、安全性好、代码执行速度快、可移植性好。php与asp都是目前web开发的主流技术,但二者也有一定的区别。首先php是完全免费的,可以自由下载,甚至可以不受限制地获得源代码,然后根据自己的实际需要加进自己的特色;二是php是跨平台运行的, 可以在unix、linux、win32和macint0sh等各种系统上运行,同时php也可以在a—pache、iis或is—api服务器上运行,因此它的可移植性好,即使程序在在windows平台上开发,如果移植到“nux上,php的脚本程序可以不经改变就可以运行,从而具备良好的跨平台性。而asp的可移植性相对差些,它仅限于windows系统的iis平台;三是asp访问数据库是通过通用数据库接口标准odbc来实现的,任何关于数据库的访问都必须调用相应的odb c驱动程序,因而各种数据库的odbc驱动程序成了asp开发web应用的关键,而php也可以通过0dbc访问各种数据库,但主要是通过函数直接访问数据库,它具有许多与各类数据库连接的函数,因而可以充分利用各数据库系统提供的扩展功能。php支持多种数据库数据库或数据文件:dbase,dbm、adabasd,filepro、informix ,m icrosoftsqlserver、mysql,solid,sybase、oracle等。而asp在数据库访问方面,远不如php那么广泛。四是php在系统安全性方面也比asp要强很多,php迄今为止还未见到过它在商业或非商业应用中出现过安全性问题。
参考文献
[1]马银戌,张宝俊,陈立新.web数据库技术的探讨研究[j].安徽电器工程职业技术学院学报,2005(3).
[2]李明鑫,杨沛超.web的数据库技术比较分析[j].图书馆学研究,2002(4).
论文联盟网
[3]钟嘉鸣,于芳.web的数据库技术的比较分析[j].信息技术,2003(2).
[4]严小军,曹永生.web的数据库技术综述[j].计算机与农业,2003(2).