CA类及其在远程数据访问中的意义.docVIP

  • 3
  • 0
  • 约6.75千字
  • 约 5页
  • 2016-09-09 发布于重庆
  • 举报
CA类及其在远程数据访问中的意义

CA类及其在远程数据访问中的意义 ????Visual FoxPro 8.0 的CursorAdapter类及其在远程数据访问中的意义 [摘??要]????本文从Visual FoxPro应用程序的观点深入剖析Visual FoxPro 8.0中新增的CursorAdapter类及其在远程数据访问中的意义。CursorAdapter对各种远程数据源提供了一种统一的面向对象的访问接口,开发人员借此可以轻松实现基于Native(本地数据)、ODBC、ADO、XML的数据访问。 [关键词]????CursorAdapter,远程数据访问,ADO,视图,Cursor,COM ????就在“Visual FoxPro已过时,并即将被淘汰……”的一片喧嚣声中,Microsoft于去年6月正式发布了Visual FoxPro 8.0。据称,这是自Visual FoxPro 3.O发布以来最精彩的一个版本。新增众多如:结构化异常处理、事件绑定、数据环境子类、XML Web services、自动递增字段、控件延迟绑定、Windows XP风格支持等等令人目不暇接的功能,着实让全球Foxer们兴奋不已,然而其中最值得令人称道的当数CursorAdapter类,笔者以为这是Visual FoxPro 8.0最抢眼的一个亮点。 Visual FoxPro因为其先天的弱点如:表的脆弱性、安全性、数据库的容量以及通用性等等,一直成为人们攻击的目标。因而越来越多的VFP程序员开始抛弃DBF表,转而采用如SQL Server、Oracle等一些大型数据库来存储数据,而将VFP作为c/s结构中的前端开发工具或者作为基于COM的三层结构应用程序的中间层开发工具。然而,传统的方式通常是使用远程视图或SQL Pass Through然后经过ODBC来访问远程数据。随着新的基于组件技术的数据访问规范OLE DB和扩展标记语言XML的出现,对VFP开发人员来说无疑产生了极大的吸引力。 Visual FoxPro中,这些新技术都无法得以很好地利用。Microsoft当然也看到了这一点,于是在刚刚发布的Visaul FoxPro 8.0中,一个全新的为用户提供统一的数据访问接口、被称为CursorAdapter的基类,展现在了全球Foxer们面前。借助CursorAdapter,在Visual FoxPro 8.0中访问远程数据要比过去的任何一个版本都简单得多: ODBC、ADO、XML的使用变得非常容易,即使你不熟悉这些技术。 ????●从一种数据访问机制转换到另一种数据访问机制变得非常轻松。 二、CursorAdapter的设计理念 CursorAdapter,必须先弄清Microsoft设计CursorAdapter的真正意图。 OLE DB的ADO数据访问技术,正日渐成为Windows平台主流的数据存取解决方案,VC、VB、Delphi这些当今流行的开发工具,都无一不支持ADO技术。在需要编写组件的场合,ADO更是一种理想的选择。然而很久以来,在Visual FoxPro中,我们似乎看不到ADO的影子。是不是Visual FoxPro不支持ADO呢?当然不是。ADO实际上是一组实现数据存取的COM对象,Visual FoxPro支持COM,当然也支持ADO。 Visual FoxPro 8.0出现之前,几乎很少看到有VFP程序员采用ADO来访问如SQL Server、Oracle等一些大型数据库,其原因何在?原来,在Visual FoxPro中,ADO产生的RecordSet对象,不能像VFP中的表或视图(本地或远程)那样实现与控件的绑定,也不能作为一个整体的数据对象来处理,必须使用循环语句来逐条处理RecordSet中的记录,因而也就无法发挥Visual FoxPro强大的数据处理功能。 CursorAdapter的出现彻底改变了这一切。可以这么说,CursorAdapter为我们提供了一种全新的远程数据访问解决方案,无论你是使用本地表(Native)、ODBC、ADO还是XML,CursorAdapter均提供了一个统一的数据访问接口,让你轻松实现远程数据的存取。 CursorAdapter的运作机制之前,让我们先来看一下传统的Visual FoxPro中的数据处理模型。 Visual FoxPro中,一切数据处理其实都是围绕着游标(Cursor)进行的。如:DBC中的视图就是一个Cursor,表单数据环境中的表也是Cursor,Select-SQL产生的查询结果还是Cursor(只读)。可以说,Visual FoxPro灵活、强大的数据处理功能无一不归功于Cursor的参与。 ADO所产生的RecordSet,Visual F

文档评论(0)

1亿VIP精品文档

相关文档