ホームページ >データベース >mysql チュートリアル >SQL `EXEC` 呼び出しの結果を変数に割り当てるにはどうすればよいでしょうか?
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 サイトの他の関連記事を参照してください。