ホームページ >データベース >mysql チュートリアル >SQL `EXEC` 呼び出しの結果を変数に割り当てるにはどうすればよいでしょうか?

SQL `EXEC` 呼び出しの結果を変数に割り当てるにはどうすればよいでしょうか?

DDD
DDDオリジナル
2025-01-04 11:08:34664ブラウズ

How Can I Best Assign the Results of an SQL `EXEC` Call to a Variable?

SQL 変数への実行結果の代入

SQL では、多くの場合、実行呼び出しの結果を変数に代入する必要があります。提供されている構文は直感的に見えるかもしれませんが、推奨されるアプローチではありません。

代替アプローチ

実行結果を変数に直接割り当てる代わりに、次の代替手段を検討してください。

出力パラメータ

出力パラメータを使用すると、ストアド プロシージャから呼び出しステートメントに値を戻すことができます。ストアド プロシージャでは、出力パラメータを定義し、それに値を割り当てます。呼び出しステートメントでは、OUTPUT キーワードを使用して出力パラメーターとして出力パラメーターを指定します。

戻り値

ストアド プロシージャの戻り値は、ストアド プロシージャの成功または失敗を示すために使用できます。操作。戻り値を使用して、呼び出しステートメントで変数を設定できます。

ここでは、出力パラメーターを使用して目的の機能を実現する例を示します。

ストアド プロシージャ:

CREATE PROCEDURE YourStoredProcedure
(
    @Param1 int,
    @Param2 varchar(5),
    @Param3 datetime OUTPUT
)
AS
    IF @Param1 > 5
    BEGIN
        SET @Param3 = GETDATE()
    END
    ELSE
    BEGIN
        SET @Param3 = '1/1/2010'
    END

    RETURN 0
GO

呼び出しステートメント:

DECLARE @OutputParameter datetime
       ,@ReturnValue     int

EXEC @ReturnValue = YourStoredProcedure 1, NULL, @OutputParameter OUTPUT

PRINT @ReturnValue
PRINT CONVERT(char(23), @OutputParameter, 121)

出力:

0
2010-01-01 00:00:00.000

以上がSQL `EXEC` 呼び出しの結果を変数に割り当てるにはどうすればよいでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。