您的位置:首页精文荟萃软件资讯 → ADO 事件模型

ADO 事件模型

时间:2004/10/7 19:05:00来源:本站整理作者:蓝点我要评论(0)


            
             
              
             
            

               
               

            



            “ADO 事件模型”支持某些同步或异步的 ADO 操作,这些操作在其开始之前或完
成之后能够引发事件。“事件”实际上是对事件处理程序例程的调用。
操作开始前调用的事件处理程序用于检查或修改操作参数,此后可删除操作或使
其完成。由于 ADO 2.0 支持异步操作,所以操作完成后调用的事件处理程序特
别重要。例如,启动异步
Recordset.Open 操作的应用程序在操作完成时,通过执行完毕事件来获得通知。
有两类事件:
ConnectionEvents — 当连接的事务开始、提交或回卷时,当 Command 执行时,以及 Connection
开始或结束时所引发的事件。
RecordsetEvents — 当定位 Recordset 对象行,更改 Recordset 行中的字段,更改 Recordset 中
的行,或在记录集进行任何更改时所引发的事件。


ADO 事件总结

ADO 2.0 支持事件,事件是对某些操作将要或已经发生的通知。
有两类事件:ConnectionEvent 和 RecordsetEvent。Connection 对象产生
ConnectionEvent 事件,而 Recordset 对象则产生 RecordsetEvent 事件。
事件由事件处理程序例程处理,该例程在某个操作开始之前或结束之后被调用。
某些事件是成对出现的。开始操作前调用的事件名格式为 WillEvent(Will 事件)
,而操作结束后调用的事件名格式为 EventComplete(Complete 事件)。
其余的不成对事件只在操作结束后发生。(其名称没有任何固定模式。)
事件处理程序由状态参数控制。附加信息由错误和对象参数提供。
可以请求事件处理程序不接受第一次通知以后的任何通知。例如,可以选择只接收
Will 事件或 Complete 事件。
在某种编程语言中,来自多个 ADO 对象的事件可以由一个事件处理程序处理。一个
事件也可以用多个事件处理程序处理,但不太常见。



ADO 事件


ADO 2.0 支持事件。事件是由某些操作在开始之前或结束之后发出的通知。事件实际
上是对应用程序中定义的事件处理程序例程的调用。请参阅 不同语言的 ADO 事件实例。
事件分成两类。ConnectionEvent 类从属于 Connection 对象的操作,而 RecordsetEvent
类则从属于 Recordset 对象的操作。 ConnectionEvents — 在连接的事务开始、提交
或回卷时,或在 Command 被执行、连接开始或结束时,事件即被引发。
RecordsetEvents — 在 Recordset 对象行中定位、更改 Recordset 行中的字段、更改
Recordset 的行、或是在 Recordset 作任何修改时,事件即被引发。


ADO 事件处理程序概述

ConnectionEvent 说明
BeginTransComplete、
CommitTransComplete、
RollbackTransComplete 事务管理 — 关于连接上的当前事务已经开始、已经提交、或者已
经回卷的通知。
WillConnect、ConnectComplete、Disconnect 连接管理 — 关于当前连接即将开始、已经
开始、或者已经结束的通知。
WillExecute、ExecuteComplete 命令执行管理 — 关于连接的当前命令的执行即将开始、
或者已经结束的通知。
InfoMessage Informational — 关于当前操作有附加信息的通知。

RecordsetEvent 说明
FetchProgress、FetchComplete 检索状态 — 关于数据检索操作进度、或者检索操作已经
结束的通知。
WillChangeField、FieldChangeComplete 字段更改管理 — 关于当前字段值即将更改、或
者已经更改的通知。
WillMove、MoveComplete、EndOfRecordset 定位管理 — 关于当前行在 Recordset 中的位
置即将更改、已经更改、或者已经到达 Recordset 结尾的通知。
WillChangeRecord、RecordChangeComplete 行更改管理 — 关于 Recordset 当前行的某
些地方即将更改、或者已经更改的通知。
WillChangeRecordset、RecordsetChangeComplete Recordset 更改管理 — 关于当前 Recordset
的某些地方即将更改、或者已经更改的通知。



事件类型


Will 事件

操作开始之前调用的事件处理程序使您有机会检查或修改操作参数,然后取消操作或允许完成该操
作。这些事件处理程序例程通常具有形如 WillEvent(Will 事件)的名称。

Complete 事件

操作完成之后调用的事件处理程序将向应用程序发出操作已经结束的通知。当挂起的操作被 Will
事件处理程序取消时,该事件处理程序也会收到通知。这些事件处理程序例程通常具有如象
EventComplete(Complete 事件)的名称。

Will 和 Complete 事件一般成对使用。

其他事件

其他事件处理程序(事件名不使用 WillEvent 或 EventComplete 格式)仅在操作完成后被调用。



事件参数


每个事件处理程序都有一个控制它的状态参数。大部分 Complete 事件都有错误参数,用于报告引
起事件发生的操作是否成功。另外还有一个对象参数,用于标识操作所执行的 ADO 对象。

Will 事件也传递用于挂起操作的参数。这样您就有机会检查参数并确定操作是否应该完成。

状态参数

当事件处理程序例程被调用时,状态参数将被设置为下列信息值之一。

相关阅读 Windows错误代码大全 Windows错误代码查询激活windows有什么用Mac QQ和Windows QQ聊天记录怎么合并 Mac QQ和Windows QQ聊天记录Windows 10自动更新怎么关闭 如何关闭Windows 10自动更新windows 10 rs4快速预览版17017下载错误问题Win10秋季创意者更新16291更新了什么 win10 16291更新内容windows10秋季创意者更新时间 windows10秋季创意者更新内容kb3150513补丁更新了什么 Windows 10补丁kb3150513是什么

文章评论
发表评论

热门文章 360快剪辑怎么使用 36金山词霸如何屏幕取词百度收购PPS已敲定!3

最新文章 微信3.6.0测试版更新了微信支付漏洞会造成哪 360快剪辑怎么使用 360快剪辑软件使用方法介酷骑单车是什么 酷骑单车有什么用Apple pay与支付宝有什么区别 Apple pay与贝贝特卖是正品吗 贝贝特卖网可靠吗

人气排行 xp系统停止服务怎么办?xp系统升级win7系统方电脑闹钟怎么设置 win7电脑闹钟怎么设置office2013安装教程图解:手把手教你安装与qq影音闪退怎么办 QQ影音闪退解决方法VeryCD镜像网站逐个数,电驴资料库全集同步推是什么?同步推使用方法介绍QQ2012什么时候出 最新版下载EDiary——一款好用的电子日记本