| 网站首页 | 文秘范文 | 论文中心 | 小品剧本 | 小说 | 藏金阁 | 留言簿 | 汇款帮助 | 客服中心 | FAQ | 电视 | 免费文秘 | 代写 | 
您现在的位置: 中国文秘网 >> 论文中心 >> 计算机类论文 >> 正文 用户登录 新用户注册
→中国文秘网温馨提示:为方便你访问本站,请将本站设为首页或加入收藏夹中(点击加入收藏)。
紧急公告:近来发现有些不法网站复制本站版面进行欺骗,为防止上当,敬请会员记好本站网址或把本站加入收藏夹中。
轻松入会,年卡、点卡任君选择,QQ及电话24小时服务,付款后5分钟开通,在线QQ:87651921 ,客服电话:013923833528,详情见"汇款须知"
基于Web的交互式数据库查询技术          【字体:
基于Web的交互式数据库查询技术
作者:sccdz    论文来源:中国文秘网    点击数:1395    更新时间:2006-4-5
将此页收藏到: 网摘中国 | 新浪 | 热门 | Hao6 | 和讯 | 天极 | YouNote | 5Seek | 365Fav | 365key |博采 | 亿友响享 | 狐摘
3万篇免费论文,近200个详细分类,为你的论文写作排忧解难。点击进入

基于Web的交互式数据库查询技术

中国科学技术大学计算机系  唐雪峰 赵保华

摘要: 介绍通过Web服务器实现数据库动态数据交互的几种方法及其对比,着重以实例说明如何实现与DBASE x和ORACLE数据库的交互操作。

关键词:Web, CGI,ISAPI,ASP

1 概述

Web技术是一项很新的技术,它不仅为Internet的广泛普及起到关键性的作用,而且还在其他相关计算机网络应用技术发展中起到关键作用,例如Intranet、电子商务等,目前它已成为计算机网络应用的一个主要技术,尤其重要的技术是web动态技术,与后台数据库的交互式动态查询技术。本文针对常用的web动态技术,与数据库交互技术作以介绍。

2 实现Web动态技术的几种方法

2.1 利用CGI实现Web动态技术

在Web应用中,与其他动态编程技术相比,CGI技术虽然是一项很早期的技术,有很多的不足,性能差、需要大量的HTTP知识、不灵活等等,但笔者认为它还是具有很强的使用性,因为其使用普遍,很多Web服务器均支持。就其协议而言,具有简单、易掌握,见效快等特点。因此本文介绍的应用实例主要是基于它的。

CGI是Common Gateway Interface的缩写,目前大多数的Web产品提供此项服务功能,它可以使用任何一种计算机语言编写,使用尤其广泛的有C、Perl、C++语言,在Internet上有很多相关的资料和程序及源代码。

它的运行过程如图1,Web服务器接受客户端浏览器的URL请求,找到CGI程序后,启动并产生一个CGI进程,将系统参数和用户请求参数交给CGI进程,由CGI进程提取数据库中数据处理后,产生结果,反馈给Web服务器,由其反馈给用户端浏览器。这样完成了一个请求过程。

图1 CGI调用流程(略)

IDC(Internet数据库连接器)
通过使用Internet数据库连接器可以发布你的数据库,允许用户访问数据,只需开发者编写最少量的代码。你只需提供SQL查询(IDC将在数据库上执行它)和模板(描述数据显示和收集的方式),而不用进行复杂的程序设计,这种方法适用于简单的不需要控制和验证数据的程序。它是IIS的功能之一 ,IIS通过调用一个名为HTTPODBC.DLL的ISAPI应用程序处理.IDC和.HTX文件实现的,调用处理过程如图2,它是一个不连续的循环。应用中要注意隐藏.IDC和.HTX文件。保证应用程序和数据库的安全性。

图2IDC应用程序的处理过程(略)

基于ISAPI的解决方案
ISAPI(Internet Server Application Programming Interface)是Microsoft的IIS提供的一种新的接口标准,用于开发交互式Web应用程序,它采用的语言多为面向对象的编程语言如Visual C++、Delphi等,它与CGI程序很相似,但在性能方面较CGI应用程序相比有较大提高,在执行时不需要重复装入代码,能够降低系统开销,提高运行速度;具有很强的灵活性,与服务器之间能够很好的衔接,能够实现一些很复杂的操作和控制。分为ISAPI扩展程序和ISAPI过滤器两种方式,前者主要完成类似CGI程序的功能,后者能够实现与IIS的更完美的结合,可以监督所有的验证请求或所有服务器发送到用户的数据,过滤器跨越整个服务器,并能影响服务器的工作方式.但ISAPI编程需要开发者有熟练的经验,特别对服务器操作、客户端与服务器之间的通讯方式的较深的理解和娴熟的编程技巧。

活动服务器页面(Active Server Pages)
它是由第三版IIS提供的新特性,实质是通过一个名为sspifilt.dll的ISAPI过滤器实现的,主要提供的功能是开发人员可以通过使用服务器端脚本(VBScript或VCScript)动态生成网页,可以同访问数据库的ActiveX控件连接在一起使用来实现数据库的动态交互查询。是目前较新的一种技术。

第三方解决方案
许多第三方工具可以用来帮助你创建交互式Web应用程序,它们主要改善了CGI程序的开发环境,降低开发人员掌握基于Web的数据库交互式应用程序的开发难度,帮助你使用所熟悉环境来开发应用程序,保存现有应用程序代码的移植和复用性。值得一提的产品有以下几种产品:

WebAction是classTools公司的产品,网址:http://www.classtools.com/

Tornado 网址:http://www.eudev.com/tornado.htm

WebHub是HREF Tools公司的产品,网址:http://www.href.com/

Foxweb是Fox公司的产品,网址:http://www.foxweb.com/

几种常用方法的对比 见表1。

方法

名称

对比 项目

基于CGI技术数据库连接器IDC 基于ISAPI 活动服务器页面ASP 第三方解决方案 操作 系统几乎任何操作系统 Window NT Window NT Window NT 与具体产品有关 Web 服务器主流Web服务器均支持 IIS IIS IIS 与具体产品有关 运行 速度每次请求均需要调入一次程序,随着请求数量增加而变慢基于ISAPI扩展解释方式,速度由于其与操作系统和Web服务器结合紧密其速度快中一般较慢 对编程人员要求需要对HTTP、HTML、TCP\IP和CGI协议,SQL、至少一种计算机编程语言熟悉HTML、SQL、IDC嵌入脚本面向对象的编程语言Delphi、Visual C++,熟悉网络环境和协议、数据库接口需要熟悉HTML、Jscript或VBScripts脚本语言、SQL 有初步的HTML和网络知识和产品要求的编程语言 培训对于网络环境用户较为容易容易较难较易容易 适于程序规模任何规模小特殊要求或规模性程序中小中小

表1 几种常用方法的对比

3 实例

针对大庆采油四厂的具体情况,主要以DbaseX数据库和Oracle数据为主,我们主要采取两种方式,DbaseX类型数据库一般存放在Window NT Server上,多数编程人员多适应Xbase语言的编程,我们采用第三方产品,在服务器端安装Foxweb产品,这样保证了现有软件开发人员能够利用Foxpro进行CGI程序编制达到交互目的,有助于使现有程序员较为容易的掌握,从而尽快产生良好的效果。

安装Foxweb产品后,其中一个名字为Foxweb.exe的文件相当于一个普通的CGI程序,安装在Web服务器的CGI目录下,用Vfoxpro编写的程序需要有它来解释后执行。

在Foxweb中提供全局变量“CGI.参数名字”和下面3个函数主要是传递客户端和服务器端的一些信息和解释、提取超文本表单的用户请求数据和合并混有普通visual Foxpro程序数据变量的超文代码,是其成为用户能够浏览的信息。Foxpro程序员只需对这些有一个透彻的理解并掌握一定超文本知识就能够进行基于web的编程。

?FormField():返回表单中变量的值
?TotFields():对于多选值变量,判定变量值个数
?MergeTxt():替换merge编码中的<< 和 >>之间的变量
Oracle数据库主要采用的是,服务器端直接安装Oracle公司提供的Web服务功能,在此基础上进行二次开发,或利用Oracle产品的Pro*C和SQL查询语言直接编写CGI程序来达到交互使用,或使用ODBC或JDBC数据库接口产品与数据库进行交互式操作。

客户端的动态方式,一种利用HTML的表单和URL的附加查询串向服务器的CGI程序传递请求,CGI程序将数据以超文本形式返回给客户,这种方式可以通过一些嵌入的脚本语言来进行表单的预处理,来减少CGI程序的负荷,提高CGI的执行效率。另一种方式是采用JAVA Applet进行交互,这样可以使程序具有更好的交互性,图形化,而且这样由于JAVA Applet是下载到客户端运行的,而且JAVA Applet有很强的图形处理和应用程序接口能力,这样CGI程序只需将基本数据提取后,返回到客户端即可,这样可以大大降低服务器端的负荷,将运算量分散到客户端,使得负荷得到均衡。

在实现这些内容时,数据库的接口也是一个很重要的方面,下面列出CGI程序、ODBC、JDBC、JAVA Applet之间的数据交换简图和基本步骤,无论如何在使用这些之前,都需要在数据库服务器上建立相应驱动程序和数据源,详细内容请查阅本文后面列出的书籍。

图3使用ODBC访问数据库(略)

使用ODBC的基本步骤是:见图3所示。

为ODBC分配环境句柄
分配一个连接句柄
连接到数据库
用SQL命令分配一个语句句柄
传送该语句
关闭连接
解除连接和环境句柄

图4使用JDBC访问数据库(略)

使用JDBC的基本步骤是:见图4所示。

建立连接
创建Statement对象,用于执行SQL语句
执行SQL语句
关闭Statement对象
关闭连接

结论

本文介绍的基于Web交互式数据库查询技术中,基于FOXWEB CGI和基于JAVA ,ODBC针对ORACLE的CGI编程技术已广泛应用于大庆采油四厂生产开发信息查询系统中,具有很强的实用性。随着新技术的不断出现和编程人员对Web和网络知识的了解和深入,我们可以采用更新、更好的技术的解决方案,特别是NT服务器IIS的ISAPI技术。

转贴于 中国文秘网 http://www.zgwmw.com
《基于Web的交互式数据库查询技术》来源于中国文秘网,中国最专业的文秘网站,欢迎阅读基于Web的交互式数据库查询技术。
论文录入:中国文秘网    责任编辑:中国文秘网 
  • 上一篇论文:

  • 下一篇论文:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    最新热点 最新推荐 相关论文
    基于CPLD的超声波测距仪研制
    外商直接投资与经济增长、对…
    基于WinDis 32技术实现网络通…
    PowerBuilder和MapInfo的集成…
    基于Web的多媒体CAI课件开发…
    基于WinDis 32技术实现网络通…
    基于Intranet的储粮测控与粮…
    PowerBuilder的分布式计算技…
    基于Client/Server 的课件系…
    基于Client/Server 的课件系…
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    sitemap:1 2 3 4 5 6 7 8 9 10 [11] 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
    28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
    55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81
    82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108
    109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135
    136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162
    163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189
    190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216
    217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243
    244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270
    271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297
    298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324
    325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351
    352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378
    379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405
    406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432
    433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459
    460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480