Verwenden von Anweisungen mit gespeicherten Prozeduren

Bei einer gespeicherten Prozedur handelt es sich um eine Datenbankprozedur, ähnlich einer Prozedur in anderen Programmiersprachen, die in der eigentlichen Datenbank enthalten ist. In SQL Server können gespeicherte Prozeduren mit Transact-SQL oder mit der Common Language Runtime (CLR) und einer der Visual Studio 2005-Programmiersprachen wie Visual Basic oder C# erstellt werden. Im Allgemeinen weisen gespeicherte SQL Server-Prozeduren die folgenden Merkmale auf:

  • Sie übernehmen Eingabeparameter und geben mehrere Werte in der Form von Ausgabeparametern an die aufrufende Prozedur bzw. den aufrufenden Batch zurück.

  • Sie enthalten Programmieranweisungen, die Operationen in der Datenbank ausführen sowie andere Prozeduren aufrufen.

  • Sie geben an die aufrufende Prozedur bzw. den aufrufenden Batch einen Statuswert, der angibt, ob die Prozedur erfolgreich oder mit Fehler ausgeführt wurde, und ggf. die Fehlerursache zurück.

Hinweis

Weitere Informationen zu gespeicherten SQL Server-Prozeduren finden Sie unter "Grundlegendes zu gespeicherten Prozeduren" in der SQL Server-Onlinedokumentation.

Zum Verarbeiten von Daten in einer SQL Server-Datenbank mit einer gespeicherten Prozedur verfügt Microsoft SQL Server JDBC Driver über die Klassen SQLServerStatement, SQLServerPreparedStatement und SQLServerCallableStatement. Welche Klasse verwendet wird, hängt davon ab, ob von der gespeicherten Prozedur IN- (Eingabe) oder OUT-Parameter (Ausgabe) benötigt werden. Wenn die gespeicherte Prozedur keine IN- oder OUT-Parameter benötigt, können Sie die SQLServerStatement-Klasse verwenden. Wenn die gespeicherte Prozedur mehrmals aufgerufen wird oder nur IN-Parameter benötigt, können Sie die SQLServerPreparedStatement-Klasse verwenden. Wenn die gespeicherte Prozedur IN- und OUT-Parameter benötigt, müssen Sie die SQLServerCallableStatement-Klasse verwenden. Nur in dem Fall, dass die gespeicherte Prozedur OUT-Parameter benötigt, müssen Sie die relativ aufwendige Verwendung der SQLServerCallableStatement-Klasse in Kauf nehmen.

Hinweis

Gespeicherte Prozeduren können auch Updatezählungen und mehrere Resultsets zurückgeben. Weitere Informationen finden Sie unter Verwenden von gespeicherten Prozeduren mit einer Updatezählung und Verwenden von mehreren Resultsets.

Wenn Sie den JDBC-Treiber verwenden, um eine gespeicherte Prozedur mit Parametern aufzurufen, müssen Sie die call-SQL-Escapesequenz zusammen mit der prepareCall-Methode der SQLServerConnection-Klasse verwenden. Die vollständige Syntax für die call-Escapesequenz lautet wie folgt:

{[?=]call procedure-name[([parameter][,[parameter]]...)]}

Hinweis

Weitere Informationen zur call -Escapesequenz und anderen SQL-Escapesequenzen finden Sie unter Verwenden von SQL-Escapesequenzen.

Die Themen in diesem Abschnitt beschreiben, wie Sie gespeicherte SQL Server-Prozeduren mit dem JDBC-Treiber und der call-SQL-Escapesequenz aufrufen können.

In diesem Abschnitt

Thema Beschreibung

Verwenden von gespeicherten Prozeduren ohne Parameter

Beschreibt die Verwendung des JDBC-Treibers zum Ausführen von gespeicherten Prozeduren, die keine Eingabe- oder Ausgabeparameter enthalten.

Verwenden von gespeicherten Prozeduren mit Eingabeparametern

Beschreibt die Verwendung des JDBC-Treibers zum Ausführen von gespeicherten Prozeduren, die Eingabeparameter enthalten.

Verwenden von gespeicherten Prozeduren mit Ausgabeparametern

Beschreibt die Verwendung des JDBC-Treibers zum Ausführen von gespeicherten Prozeduren, die Ausgabeparameter enthalten.

Verwenden von gespeicherten Prozeduren mit einem Rückgabestatus

Beschreibt die Verwendung des JDBC-Treibers zum Ausführen von gespeicherten Prozeduren, die Rückgabestatuswerte enthalten.

Verwenden von gespeicherten Prozeduren mit einer Updatezählung

Beschreibt die Verwendung des JDBC-Treibers zum Ausführen von gespeicherten Prozeduren, die Updatezählungen enthalten.

Siehe auch

Andere Ressourcen

Verwenden von Anweisungen mit dem JDBC-Treiber