1

同じクエリからさまざまなシナリオのレコード セットを取得する必要がある状況があります。つまり、関数を作成する必要があるか、2 つのパラメーターを渡すといくつかのパラメーターに対して実行できるストアド プロシージャを作成する必要があり、3 つのパラメーターを渡すと機能し、その後も機能する可能性があります。SQL サーバーで可変引数を渡すことができる Sp または関数を作成できますか?

4

1 に答える 1

1

オプション(デフォルト)のパラメータを使用してストアド プロシージャを作成できます。

CREATE PROCEDURE TestProcedure
(
   @Param1 int = null,
   @Param2 int = null,
   ...
   @ParamN int = null)
{
   //do stuff
}

これを次のように呼び出すことができます

EXEC TestProcedure 1
EXEC TestProcedure 1, 2

などなど

EXEC TestProcedure 1, 2 ... N

これは明らかにパラメーター数の上限を意味しますが、それが許容できる場合は、説明したことを達成できます

于 2012-09-03T08:42:08.140 に答える