Heim >Datenbank >MySQL-Tutorial >Wie kann ich die Ergebnisse eines SQL-Befehls „exec' einer Variablen zuweisen?
Verwenden von Ausgabeparametern zum Zuweisen von Exec-Ergebnissen zu SQL-Variablen
In SQL wird der Befehl exec häufig zum Ausführen gespeicherter Prozeduren und Funktionen verwendet. Während Sie das Ergebnis eines exec-Aufrufs nicht direkt einer Variablen zuweisen können, indem Sie einen Ausdruck wie den von Ihnen vorgeschlagenen verwenden („exec @PreviousBusinessDay = dbo.up_GetBusinessDay @Date, -1“), gibt es alternative Methoden, um diese Funktionalität zu erreichen.
Ein bevorzugter Ansatz ist die Verwendung von Ausgabeparametern. Mit Ausgabeparametern können Sie eine Variable als Eingabe übergeben, sie aber auch mit einem von der gespeicherten Prozedur oder Funktion zurückgegebenen Wert aktualisieren. So können Sie es machen:
Erstellen Sie eine gespeicherte Prozedur mit einem Ausgabeparameter:
CREATE PROCEDURE YourStoredProcedure( @Param1 int, @Param2 varchar(5), @Param3 datetime OUTPUT ) AS IF ISNULL(@Param1, 0) > 5 BEGIN SET @Param3 = GETDATE() END ELSE BEGIN SET @Param3 = '1/1/2010' END RETURN 0 GO
In diesem Beispiel wird der Parameter @Param3 als Ausgabe deklariert Parameter. Es wird mit dem von der gespeicherten Prozedur zurückgegebenen Wert aktualisiert.
Aufrufen der gespeicherten Prozedur mithilfe eines Ausgabeparameters:
DECLARE @OutputParameter datetime ,@ReturnValue int EXEC @ReturnValue = YourStoredProcedure 1, NULL, @OutputParameter OUTPUT PRINT @ReturnValue PRINT CONVERT(char(23), @OutputParameter, 121)
In diesem Beispiel der @OutputParameter Variable wird deklariert und als Ausgabeparameter an die gespeicherte Prozedur übergeben. Nach dem exec-Aufruf enthält die Variable @OutputParameter das von der gespeicherten Prozedur zurückgegebene Ergebnis, das dann auf der Konsole ausgegeben wird.
Ausgabe:
0 2010-01-01 00:00:00.000
Die Verwendung von Ausgabeparametern bietet eine robuste und effiziente Möglichkeit, Werte zwischen gespeicherten Prozeduren und Clientanwendungen in SQL zu übergeben.
Das obige ist der detaillierte Inhalt vonWie kann ich die Ergebnisse eines SQL-Befehls „exec' einer Variablen zuweisen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!