1
私は3つのパラメータを持つSQL関数を持っています。 3番目のパラメータのデフォルト値はNULL
です。しかし、私は書くことができません。SQL関数とデフォルト値
dbo.myFunction(Param1, Param2)
私はエラーを取得する:
An insufficient number of arguments were supplied for the procedure or function dbo.myFunction.
は、したがって、私は書くために持っている:
dbo.myFunction(Param1, Param2, NULL)
dbo.myFunction(Param1, Param2, default)
は、私はちょうどdbo.myFunction(Param1, Param2)
を書くことができる方法はあります?私は、これは多くのクリーナーだと思う(と私は、私は新しいのparamを追加しました既存の機能を変更することがなくなります!)&は必ず渡さなければならないオプションパラメータとは対照的に、彼らはデフォルトパラメータは
はとにかくオプションのパラメータを持つのがあることを確認してくださいだろうか?新しいパラメーターが既存のUDFに追加された場合、その関数への既存の呼び出しの標準プロトコルは何ですか?それらをすべて通過して「デフォルト」を追加しますか? – Curt
引数が少なすぎたり多すぎる関数を呼び出すとエラーが発生するので、既定の呼び出しを変更したり、別の名前の改訂されたprocを作成したりする必要があります –
ありがとうございましたAlex、ありがとうこの? theresのような私には、なぜ入力されていない場合、デフォルトは単に '仮定'にすることができない理由はないようです。 – Curt