共用方式為


呼叫預存程序 (ODBC)

當 SQL 陳述式使用 ODBC CALL 逸出子句呼叫預存程序時,Microsoft® SQL Server™ 驅動程式會使用遠端預存程序呼叫 (RPC) 機制將程序傳送到 SQL Server。 RPC 要求會略過 SQL Server 中大部分的陳述式剖析和參數處理,也比使用 Transact-SQL EXECUTE 陳述式來得快。

如需示範這項功能的範例應用程式,請參閱<處理傳回碼和輸出參數 (ODBC)>。

將程序當做 RPC 執行

  1. 建構使用 ODBC CALL 逸出序列的 SQL 陳述式。 此陳述式會針對每個輸入、輸入/輸出和輸出參數,以及程序傳回值 (若有) 使用參數標記:

    {? = CALL procname (?,?)}
    
  2. 針對每個輸入、輸入/輸出和輸出參數,以及程序傳回值 (若有) 呼叫SQLBindParameter

  3. 使用 SQLExecDirect 執行此陳述式。

[!附註]

如果應用程式使用 Transact-SQL EXECUTE 語法 (相對於 ODBC CALL 逸出序列) 來提交程序,則 SQL Server ODBC 驅動程式會將程序呼叫當做 SQL 陳述式 (而不是 RPC) 傳遞到 SQL Server。 此外,如果使用 Transact-SQL EXECUTE 陳述式,則不會傳回輸出參數。

請參閱

概念

批次預存程序呼叫

執行預存程序

呼叫預存程序

程序

其他資源

執行預存程序的使用說明主題 (ODBC)