sql >> データベース >  >> RDS >> Sqlserver

execストアドプロシージャの結果を変数に設定するには?

    代わりに:

    SET @S=EXEC spGetNthNo @a,@d,@n
    

    必要なもの:

    EXEC @S = spGetNthNo @a,@d,@n
    

    そして、手順内で次のようなものが必要です:

    RETURN 100
    

    または:

    RETURN @x
    

    プロシージャの実行後に @S に必要な値。

    出力パラメーターを使用することもできます。組み合わせ例:

    IF OBJECT_ID('tempdb..#example') IS NOT NULL DROP PROCEDURE #example
    GO
    
    CREATE PROCEDURE #example
      @output_param INT OUTPUT
    AS BEGIN
       SET @output_param = 100
       RETURN 200
    END
    GO
    
    DECLARE @return INT, @param INT
    EXEC @return = #example @output_param = @param OUTPUT
    SELECT @return as [return value], @param as [output parameter]
    


    1. MySQLで重複する行の名前を変更する

    2. Mysql関数MBRContainsは正確ではありません

    3. LOGおよびEXP関数の丸めの問題

    4. PostgreSQLテーブルを変更して列を一意にするにはどうすればよいですか?