ADO 执行 方法
❮ 完整命令对象参考
Execute 方法执行 Command 对象的 CommandText 属性中指定的查询、SQL 语句或过程。
如果它是返回行的查询,则结果将存储在一个新的 Recordset 对象中。如果它不是返回行的查询,则将返回一个关闭的 Recordset 对象。
返回行的语法
Set rs=objcommand.Execute(ra,parameters,options)
不返回行的语法
objcommand.Execute ra,parameters,options
参数 | 描述 |
---|---|
ra | 可选。返回受查询影响的记录数。对于返回行的查询,使用 Recordset 对象的 RecordCount 属性来计算对象中包含多少记录。 |
parameters | 可选。与 SQL 语句一起传递的参数值。用于更改、更新或插入新参数值到 Parameters 集合中。 |
options | 可选。设置提供程序应如何评估 CommandText 属性。可以是一个或多个 CommandTypeEnum 或 ExecuteOptionEnum 值。默认值为 adCmdUnspecified。 |
示例
<%
Set objcommand.CommandText="SELECT * FROM Customers"
objCommand.Execute
%>
或者
<%
Set objcommand.CommandText="Customers"
objCommand.Execute(,,adCmdTableDirect)
%>
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 | 指示命令应异步执行。此值不能与 CommandTypeEnum 值 adCmdTableDirect 结合使用。 | |
adAsyncFetch | 指示在 CacheSize 属性中指定的初始数量之后,应异步检索剩余的行。 | |
adAsyncFetchNonBlocking | 指示主线程在检索时从不阻塞。如果请求的行尚未检索到,则当前行将自动移动到文件的末尾。如果您从包含持久存储的 Recordset 的 Stream 中打开 Recordset,则 adAsyncFetchNonBlocking 将不起作用;操作将是同步和阻塞的。当使用 adCmdTableDirect 选项打开 Recordset 时,adAsynchFetchNonBlocking 将不起作用。 | |
adExecuteNoRecords | 指示命令文本是一个不返回行的命令或存储过程(例如,只插入数据的命令)。如果检索到任何行,则它们将被丢弃,不会返回。adExecuteNoRecords 只能作为可选参数传递给 Command 或 Connection Execute 方法。 | |
adExecuteStream | 指示命令执行的结果应作为流返回。adExecuteStream 只能作为可选参数传递给 Command Execute 方法。 | |
adExecuteRecord | 指示 CommandText 是一个命令或存储过程,它返回一个应作为 Record 对象返回的单行。 |
❮ 完整命令对象参考