2つまたは3つの異なるテーブルに分散された約10個の制約があるDBで作業しており、DEFAULT
これらすべての属性の値をパラメーターとして受け取るストアドプロシージャを作成する必要があります。ただし、値が受信されない場合は、これらのパラメーターで対応するテーブルのデフォルト値を想定する必要があります。それを行う簡単な方法がないことを知って、私はデフォルト値を返すカスタムUDFを作成し、各パラメーターのデフォルト値として制約をDEFAULT (dbo.SomeFunction()) FOR [Attribute]
追加し、追加することを考えました。= dbo.SomeFunction()
ただし、これを実現するための最良の方法は何ですか。
1)すべての属性にUDFを記述し、実行を簡素化しますが、最終的には10個の異なる関数になります。また
2)単一を記述し、または異なるテーブル/属性のペアdbo.GetDefault(TableName NVARCHAR(32), AttributeName NVARCHAR(32)
で使用します。IF ... ELSE ...
SWITCH
どう思いますか?