ADO Execute 方法
❮ Command 物件參考大全
Execute 方法執行 Command 物件 CommandText 屬性中指定的查詢、SQL 語句或過程。
如果它是一個返回行的查詢,則結果將儲存在一個新的 Recordset 物件中。如果它不是一個返回行的查詢,則將返回一個關閉的 Recordset 物件。
返回行的語法
Set rs=objcommand.Execute(ra,parameters,options)
非返回行的語法
objcommand.Execute ra,parameters,options
引數 | 描述 |
---|---|
ra | 可選。返回受查詢影響的記錄數。對於返回行的查詢,使用 Recordset 物件的 RecordCount 屬性來計算物件中的記錄數。 |
parameters | 可選。與 SQL 語句一起傳遞的引數值。用於更改、更新或插入 Parameters Collection 中的新引數值。 |
選項 | 可選。設定提供程式應如何評估 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 方法,必須使用 adCmdTableDirect 開啟 Recordset。此值不能與 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 物件返回的命令或儲存過程。 |
❮ Command 物件參考大全