Menu
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

ADO WillExecuteExecuteComplete 事件


❮ 连接对象完整参考

事件是可以在特定操作发生后自动调用的子程序。

  • WillExecute 事件可以在调用 objcomm.Execute、objconn.Execute 或 objrs.Open 之前触发。
  • ExecuteComplete 事件可以在调用 objcomm.Execute、objconn.Execute、objrs.Open、objrs.Requery 或 objrs.NextRecordset 完成后触发。

语法

WillExecute src,cursortyp,locktyp,options,
status,objcomm,objrs,objconn

ExecuteComplete recaffected,objerror,status,
objcomm,objrs,objconn

参数 描述
src 包含 SQL 命令或存储过程名称的字符串
cursortyp 指定要使用的游标类型。 CursorTypeEnum 值之一
locktyp 指定要使用的锁定类型。 LockTypeEnum 值之一
options CommandTypeEnum ExecuteOptionEnum 值之一或多个
recaffected 受执行影响的记录数
objerror 包含发生的错误的 Error 对象

注意: EventStatusEnum 值必须设置为 adStatusErrorsOccurred 才能创建 Error 对象

status EventStatusEnum
objcomm 对于 WillExecute:设置为执行的 Command 对象或 Nothing

对于 ExecuteComplete:执行的 Command 对象

objrs 对于 WillExecute:设置为命令执行结果的 Recordset 对象或 Nothing

对于 ExecuteComplete:执行命令的结果的 Recordset 对象

objconn 与命令执行关联的 Connection 对象

CursorTypeEnum 值

指定 Recordset 对象中使用的游标类型。

常量 描述
adOpenUnspecified -1 不指定游标类型。
adOpenForwardOnly 0 默认。使用只向前游标。与静态游标相同,只是您只能向前滚动记录。当您只需要遍历 Recordset 一次时,这可以提高性能。
adOpenKeyset 1 使用键集游标。与动态游标相同,只是您无法看到其他用户添加的记录,尽管其他用户删除的记录在您的 Recordset 中是不可访问的。其他用户对数据的更改仍然可见。
adOpenDynamic 2 使用动态游标。其他用户的添加、更改和删除操作可见,并且允许所有类型的 Recordset 移动操作,但书签除外,如果提供者不支持它们。
adOpenStatic 3 使用静态游标。您可以使用静态副本记录集来查找数据或生成报表。其他用户的添加、更改或删除操作不可见。

LockTypeEnum 值

常量 描述
adLockUnspecified -1 不指定锁定类型。对于克隆,克隆将使用与原始克隆相同的锁定类型创建。
adLockReadOnly 1 表示只读记录。您不能修改数据。
adLockPessimistic 2 表示悲观锁定,逐条记录锁定。提供者执行确保成功编辑记录所需的操作,通常是在编辑后立即锁定数据源中的记录。
adLockOptimistic 3 表示乐观锁定,逐条记录锁定。提供者使用乐观锁定,只在您调用 Update 方法时锁定记录。
adLockBatchOptimistic 4 表示乐观批量更新。批量更新模式需要此选项。

CommandTypeEnum 值

常量 描述
adCmdUnspecified -1 不指定命令类型参数。
adCmdText 1 将 CommandText 评估为命令或存储过程调用的文本定义。
adCmdTable 2 将 CommandText 评估为表名,其列全部由内部生成的 SQL 查询返回。
adCmdStoredProc 4 将 CommandText 评估为存储过程名称。
adCmdUnknown 8 表示 CommandText 属性中的命令类型未知。
adCmdFile 256 将 CommandText 评估为持久保存的 Recordset 的文件名。仅与 Recordset.Open 或 Requery 一起使用。
adCmdTableDirect 512 将 CommandText 评估为表名,其列全部返回。仅与 Recordset.Open 或 Requery 一起使用。若要使用 Seek 方法,Recordset 必须以 adCmdTableDirect 打开。此值不能与 ExecuteOptionEnum 值 adAsyncExecute 组合使用。

ExecuteOptionEnum 值

常量 描述
adOptionUnspecified -1 表示命令未指定。
adAsyncExecute 16 表示命令应异步执行。此值不能与 CommandTypeEnum 值 adCmdTableDirect 组合使用。
adAsyncFetch 32 表示在 CacheSize 属性中指定的初始数量之后,剩余的行应异步检索。
adAsyncFetchNonBlocking 64 表示主线程在检索时从不阻塞。如果请求的行尚未检索,当前行将自动移动到文件末尾。如果从包含持久存储的 Recordset 的 Stream 打开 Recordset,adAsyncFetchNonBlocking 将不会有任何影响;该操作将是同步的和阻塞的。adAsynchFetchNonBlocking 在使用 adCmdTableDirect 选项打开 Recordset 时不会有任何影响。
adExecuteNoRecords 128 表示命令文本是不会返回行的命令或存储过程(例如,只插入数据的命令)。如果检索到任何行,它们将被丢弃,不会返回。adExecuteNoRecords 只能作为可选参数传递给 Command 或 Connection Execute 方法。
adExecuteStream 256 表示命令执行的结果应作为流返回。adExecuteStream 只能作为可选参数传递给 Command Execute 方法。
adExecuteRecord 512 表示 CommandText 是返回单行的命令或存储过程,应将其作为 Record 对象返回。

EventStatusEnum 值

常量 描述
adStatusOK 1 触发事件的操作成功
adStatusErrorsOccurred 2 触发事件的操作失败
adStatusCantDeny 3 无法取消待处理的操作
adStatusCancel 4 取消触发事件的操作
adStatusUnwantedEvent 5 在事件方法完成执行之前,阻止后续通知

❮ 连接对象完整参考
×

Contact Sales

If you want to use W3Schools services as an educational institution, team or enterprise, send us an e-mail:
[email protected]

Report Error

If you want to report an error, or if you want to make a suggestion, send us an e-mail:
[email protected]

W3Schools is optimized for learning and training. Examples might be simplified to improve reading and learning. Tutorials, references, and examples are constantly reviewed to avoid errors, but we cannot warrant full correctness of all content. While using W3Schools, you agree to have read and accepted our terms of use, cookie and privacy policy.

Copyright 1999-2024 by Refsnes Data. All Rights Reserved. W3Schools is Powered by W3.CSS.