Heim > Datenbank > MySQL-Tutorial > Wie kann ich die Ergebnisse eines SQL-Befehls „exec' einer Variablen zuweisen?

Wie kann ich die Ergebnisse eines SQL-Befehls „exec' einer Variablen zuweisen?

Mary-Kate Olsen
Freigeben: 2025-01-05 05:15:46
Original
989 Leute haben es durchsucht

How Can I Assign the Results of an SQL `exec` Command to a Variable?

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
Nach dem Login kopieren

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)
Nach dem Login kopieren

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
Nach dem Login kopieren

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!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage