Ausführen gespeicherter Prozeduren: Aufrufen gespeicherter Prozeduren

Gilt für:SQL ServerAzure SQL-DatenbankAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

Der ODBC-Treiber von SQL Server unterstützt die Ausführung gespeicherter Prozeduren als remote gespeicherte Prozeduren. Das Ausführen einer gespeicherten Prozedur als remote gespeicherte Prozedur ermöglicht dem Treiber und dem Server das Optimieren der Leistung der Prozedurausführung.

Wenn eine SQL-Anweisung eine gespeicherte Prozedur mithilfe der ODBC CALL-Escapeklausel aufruft, sendet der SQL Server-Treiber die Prozedur mithilfe des RPC-Mechanismus (Remote Stored Procedure Call) an SQL Server. RPC-Anforderungen umgehen größtenteils das Analysieren der Anwendungen und die Parameterverarbeitung in SQL Server und sind schneller als die 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

  1. 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 Prozedurrückgabewert (falls zutreffend):

    {? = CALL procname (?,?)}  
    
  2. Rufen Sie SQLBindParameter für jeden Eingabe-, Eingabe/Ausgabe- und Ausgabeparameter sowie für den Prozedurrückgabewert (sofern vorhanden) auf.

  3. Führen Sie die Anweisung mit SQLExecDirectaus.

Hinweis

Wenn eine Anwendung eine Prozedur mit der Transact-SQL EXECUTE-Syntax (statt mit der ODBC CALL-Escapesequenz) übermittelt, gibt der SQL Server ODBC-Treiber den Prozeduraufruf an SQL Server als SQL-Anweisung statt als RPC weiter. Darüber hinaus werden Ausgabeparameter nicht zurückgegeben, wenn die Transact SQL EXECUTE-Anweisung verwendet wird.

Weitere Informationen

Batchverarbeitung von gespeicherten Prozeduraufrufen
Ausführen gespeicherter Prozeduren
Aufrufen von gespeicherten Prozeduren
Vorgehensweisen