ストアド プロシージャの呼び出しをコードで自動的に置き換えるツール/スクリプトが必要です。例を挙げて説明する方がよい。
ストアドプロシージャが2回呼び出されるこのようなコードがあります
declare @x int, @y int
set @x = 10
exec @y = calculate_and_insert @x
set @x = @y
exec @y = calculate_and_insert @x
呼び出されたプロシージャには次のようなコードがあります。
create stored procedure calculate and insert @in int
as
declare @x int
set @x = 10
return @x + @in
外側のスコープに同じ名前の変数があることを確認してください
私は次のようなものを生成したいと思います:
declare @x int, @y int
set @x = 10
declare @cai1_in int
set @cai1_in = @x
declare @cai1_x int
set @cai1_x = 10
set @y = @cai1_x + @cai1_in
set @x = @y
declare @cai2_in int
set @cai2_in = @x
declare @cai2_x int
set @cai2_x = 10
set @y = @cai2_x + @cai2_in
たぶん、誰かがすでにそのようなことをする必要がありました。その理由は、本番環境では変更したくないストアド プロシージャがたくさんあるが、それらの新しいバージョンを実行して結果を確認したいからです。テストでそれらを再コーディングし、スクリプトを生成します。
SQL を使用する必要はありません。別の言語で行うことができます。また、すべてのケースをカバーする必要はありません。