VFP与ASP相结合开发Web数据库应用

来源:计算机等级考试    发布时间:2012-08-28    计算机等级考试视频    评论

  1.VFP与Web数据库应用

  ----作为最成功的大众数据库,Foxpro简便易学,有广大的用户。随着VFP 5.0的推出,VFP已经成为一个强大的企业级开发工具。它不仅可以开发文件/服务器(F/S)数据库应用,也可以开发C/S应用,这时VFP作为一个前端工具,后端可以是SQL Server,Sybase等数据库Engine。通过Remote View和SQL Passthrough函数,VFP可以像操作本地数据一样,方便地处理服务器端数据。----在Internet/Intranet影响日益巨大的今天,开发Web数据库应用成为引人关注的技术。Web数据库应用有一个天然的多层C/S结构。在这个结构中,客户端(Client)仅由Browser组成,几乎没有软件维护和升级的问题。来自Client的请求发送到WebServer,我们只须开发WebServer端软件,处理请求,与数据库服务器交互、并把结果返回Client,系统维护和升级非常方便。只要允许,任意一个客户都可以通过Internet或Intranet访问我们的数据。

  ----VFP完全具备开发Web数据库应用的能力。不过有意思的是,这次VFP被推到了后台,在数据库服务器上专门处理数据存取和实现商业逻辑。数据库服务器和WebServer可以运行在同一个网络服务器上,或者运行在由高速通道连接的两台网络服务器上(如NT Server),这样网络传输瓶颈不再存在。并且借助NTServer的安全管理,客户并不能直接接触VFP数据库,而是通过WebServer存取数据,VFP数据库的安全特性得以大大提高,而此两项一般认为是VFP的重要弱点。

  2.ASP(Active Server Page)与VFP的组件技术

  ----Web数据库应用可以由CGI、ISAPI、IDC、ASP等实现。其中ASP的功能最为强大,在其中可以混用HTML、DHTML、ActiveX、VBSsript或JavaSript,特别是可以使用服务器端组件。此服务器端组件可以用VFP、VB、VC++、Delphi等任意支持COM技术的语言编写,以实现用户特定的商业逻辑。如果不出意外,ASP将成为主流技术。目前有Microsoft的IIS(Internet Information Server,NT Server)和PWS(Personel Web Server,Win95)支持ASP。----在传统的F/S或C/S应用中,组件作为面向对象的编程风格,你可以随自己的喜好,采用或不采用它。然而在ASP中使用VFP,组件(一个OLE Server DLL)是你唯一的选择。你的处理过程都应封装在一个或多个组件中。

  3.使用的环境和工具

  ----对于ASP,需要WinNT4.0(ServicePack3)、IIS3.0(WinNT自带)、Visual InterDev1.0。也可以是:Win95、PWS(Visual InterDev1.0中提供)、Visual InterDev1.0。----为了使IIS或PWS支持ASP,在安装Visual InterDev时必须首先在服务器上选择安装其中的Server Components:FrontPage Server Extensions和Active Server Pages,然后在开发服务器上安装Client Components:Visual InterDevClient。也可以把这些都安装在同一台机器上,这样可以在单机上方便地编程、调试。

  4.VFP组件的实现

  ----在VFP中开始一个Project,取名为Classes,然后在此Project中建立一个Program,取名Classdef.prg。它定义了一个OneRecord类,其功能是一条条显示一个数据库,具有向前、向后和定位能力。使用一个DBF文件d:/vfpweb/data/booksno.dbf,结构为:
  Field_name Field_type Field_len
  bookno C 16
  bookname C 50
  author C 12
  editor C 14
  pubdate D 8
  charnum N 4.0

  在Classdef.prg 中 键 入 代 码:
  Define class onerecord as custom olepublic
  mcDatapath=""

  function getdatapath
  return (this.mcdatapath)

  function getcurrentno
  return recno()

  function init
  set exclu off
  set century on
  set date to ansi
  return

  function setdatapath
  lparameter cpath
  if type("cpath")< >"C"
  return
  endif
  this.mcdatapath=cpath
  set defau to (cpath)
  if not used("booksno")
  select 0
  use booksno
  else
  select booksno
  endif
  return

  function movenext
  if .not.eof()
  skip
  endif
  return

  function moveprevious
  if .not.bof()
  skip -1
  endif
  return

上一页1234下一页

视频学习

我考网版权与免责声明

① 凡本网注明稿件来源为"原创"的所有文字、图片和音视频稿件,版权均属本网所有。任何媒体、网站或个人转载、链接转贴或以其他方式复制发表时必须注明"稿件来源:我考网",违者本网将依法追究责任;

② 本网部分稿件来源于网络,任何单位或个人认为我考网发布的内容可能涉嫌侵犯其合法权益,应该及时向我考网书面反馈,并提供身份证明、权属证明及详细侵权情况证明,我考网在收到上述法律文件后,将会尽快移除被控侵权内容。

最近更新

社区交流

考试问答