SQL Server 2008でプログラマビリティオブジェクトを検証する方法はありますか?T-SQLプログラマビリティオブジェクトの検証
私は、他のプログラマビリティオブジェクト(テーブルだけでなく)に依存する〜500のプログラマビリティオブジェクトを持つデータベースを持っています。
リファクタリングを行うと、変更によって壊れている他のオブジェクトを見つけるのは非常に困難です。
CREATE FUNCTION [dbo].[GetSomeText]() RETURNS nvarchar(max) AS BEGIN RETURN 'asdf' END
/* uses "GetSomeText()" function */
CREATE FUNCTION [dbo].[GetOtherText]() RETURNS nvarchar(max) AS BEGIN RETURN [dbo].[GetSomeText]() + '-qwer' END
は今、私はいくつかのリファクタリングを行う(追加パラメータ@Num
GetSomeText()
関数に):たとえば、私は...
元の状態パラメータの数を変更した場合
ALTER FUNCTION [dbo].[GetSomeText](@Num int) RETURNS nvarchar(max) AS BEGIN RETURN 'asdf' + CAST(@Num as nvarchar(max)) END
を今すぐ必要なパラメータを指定しないでGetSomeText()
関数を呼び出すため、関数GetOtherText()
が壊れています。
このエラーに関する情報を取得する手段はありますか?
現在、すべてのプログラマビリティオブジェクトをALTER
としてスクリプトを実行し、エラーをチェックします。この方法はあまりに複雑すぎるように見えます(T-SQLの環境では使いにくい)。
EDIT:回答を
ありがとう!私はすべてのオブジェクトの依存またはリストを取得する方法を知っています。 問題はオブジェクトのボディをチェックすることです。依存関係がある場合は、ALTER
スクリプトを実行するよりも正当性をチェックする方法がありますか?
私はautomaticaly生成されたテストと一緒に行きます。ありがとう! – TcKs