SET ROWCOUNT
値がパラメータからプロシージャに送られるため、使用しています。
SET ROWCOUNT @take
SELECT * FROM Something
SET ROWCOUNT 0
別のプロシージャを同時に実行して行数設定を取得することは可能ですか、それともストアドプロシージャで使用するのは完全に安全ですか?
SET ROWCOUNT
値がパラメータからプロシージャに送られるため、使用しています。
SET ROWCOUNT @take
SELECT * FROM Something
SET ROWCOUNT 0
別のプロシージャを同時に実行して行数設定を取得することは可能ですか、それともストアドプロシージャで使用するのは完全に安全ですか?
Rowcount は現在のスコープに固有であるため、安全です。ただし、Books Online では次のように説明されています (ニーズに影響する場合と影響しない場合があります)。
SET ROWCOUNT を使用しても、SQL Server の次のリリースの DELETE、INSERT、および UPDATE ステートメントには影響しません。新しい開発作業では、SET ROWCOUNT を DELETE、INSERT、および UPDATE ステートメントと共に使用しないでください。また、現在それを使用しているアプリケーションを変更することを計画してください。また、現在 SET ROWCOUNT を使用している DELETE、INSERT、および UPDATE ステートメントについては、TOP 構文を使用するように書き直すことをお勧めします。詳細については、「DELETE (Transact-SQL)」、「INSERT (Transact-SQL)」、または「UPDATE (Transact-SQL)」を参照してください。
TOP も変数を使用でき、INSERT、UPDATE、および DELETE ステートメントで使用できるようになりました。(ねえ、今日何か新しいことを学びました。) Books online で TOP と変数を使用する方法を調べてください。