クエリ結果の SQL 変数への代入
提供された構文を使用して SQL の変数に exec 呼び出しの結果を代入することはできません。ただし、ストアド プロシージャからデータを取得したり、クエリを実行したりするには、別の方法もあります。
出力パラメータ
ストアド プロシージャから 1 つの値を取得する必要がある場合は、出力パラメータを使用できます。出力パラメーターは、ストアド プロシージャに渡され、プロシージャ内で変更される変数です。変更された値は、呼び出し元のコードに返されます。
例:
2 つのパラメーターを受け取り、DATE 値を出力パラメーターに割り当てる次のストアド プロシージャについて考えてみましょう。
CREATE PROCEDURE up_GetBusinessDay ( @Date Date, @Offset Int, @NextBusinessDay Date OUTPUT ) AS BEGIN -- Code to calculate the NextBusinessDay SET @NextBusinessDay = '2023-03-15' END GO
コードからこのストアド プロシージャを呼び出し、出力パラメータを指定できます変数:
DECLARE @NextBusinessDay DATE; EXEC up_GetBusinessDay @Date = '2023-03-08', @Offset = -1, @NextBusinessDay OUTPUT; SELECT @NextBusinessDay;
これにより、ストアド プロシージャで計算された DATE 値が @NextBusinessDay 変数に返されます。
戻り値
別のオプション戻り値を使用して、ストアド プロシージャまたはクエリの成功または失敗を示すことです。戻り値は、呼び出しコードに返される単一の整数値です。
例:
次のストアド プロシージャは、入力値が次の場合に戻り値 1 を返します。 5 より大きい場合、0 を返します:
CREATE PROCEDURE YourProcedure ( @Param Int ) AS BEGIN IF @Param > 5 RETURN 1; ELSE RETURN 0; END GO
エラー処理を使用してコード内で戻り値を処理できます。メカニズム。
以上がSQL クエリの結果を変数に割り当てるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。