Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Wenn eine SQL-Anweisung eine gespeicherte Prozedur mithilfe der ODBC CALL-Escapeklausel aufruft, sendet der Microsoft SQL Server-Treiber die Prozedur mithilfe des RPC-Mechanismus (Remote Stored Procedure Call) an SQL Server. RPC-Anforderungen umgehen einen Großteil der Anweisungsanalyse und Parameterverarbeitung in SQL Server und sind schneller als die Verwendung der Transact-SQL EXECUTE-Anweisung.
Eine Beispielanwendung, die dieses Feature veranschaulicht, finden Sie unter Prozessrücklaufcodes und Ausgabeparameter (ODBC).For a sample application that demonstrates this feature, see Process Return Codes and Output Parameters (ODBC).
So führen Sie eine Prozedur als RPC aus
Erstellen Sie eine SQL-Anweisung, die die ODBC CALL-Escapesequenz verwendet. Die Anweisung verwendet Parametermarkierungen für jeden Eingabe-, Eingabe-/Ausgabe- und Ausgabeparameter sowie für den Rückgabewert der Prozedur (falls vorhanden):
{? = CALL procname (?,?)}Rufen Sie SQLBindParameter für jeden Eingabe-, Eingabe-/Ausgabe- und Ausgabeparameter sowie für den Rückgabewert der Prozedur (falls vorhanden) auf.
Führen Sie die Anweisung mit SQLExecDirect aus.
Hinweis
Wenn eine Anwendung eine Prozedur unter Verwendung der Transact-SQL EXECUTE-Syntax (im Gegensatz zur ODBC-AUFRUF-Escapesequenz) sendet, übergibt der SQL Server-ODBC-Treiber den Prozeduraufruf an SQL Server als SQL-Anweisung und nicht als RPC. Außerdem werden Ausgabeparameter nicht zurückgegeben, wenn die Transact-SQL EXECUTE-Anweisung verwendet wird.
Siehe auch
Ausführen von Gespeicherten Prozeduren –Themen (How-to-Topics, ODBC)
Batchverarbeitung gespeicherter Prozeduraufrufe
Ausführen gespeicherter Prozeduren
Aufrufen einer gespeicherten Prozedur
Verfahren