SQL のビューでのパラメーターの受け渡し
ストアド プロシージャとは異なり、SQL Server のビューではパラメーターを直接渡すことができません。これは、ユーザー定義の基準に基づいてデータをフィルタリングする必要がある場合に制限となる可能性があります。
この問題に対する解決策の 1 つは、以下に示すように、パラメータを使用してビューを作成することです。
create or replace view v_emp(eno number) as select * from emp where emp_id=&eno;
ただし、これは SQL Server では機能しません。
代替ソリューション: 保存Functions
ビューのような機能にパラメーターを渡す別のアプローチは、ストアド関数を作成することです。ストアド関数は入力パラメータを使用して定義でき、その結果セットとしてテーブルを返すことができます。
パラメータ化されたビューとして機能できるストアド関数の例を次に示します。
CREATE FUNCTION v_emp (@pintEno INT) RETURNS TABLE AS RETURN SELECT * FROM emp WHERE emp_id=@pintEno;
これストアド関数は @pintEno 整数パラメータを受け取り、その ID に一致する従業員を含むテーブルを返します。
ストアド関数を使用するには、次のように呼び出すことができます。 view:
SELECT * FROM v_emp(10)
これにより、emp_id が 10 のすべての従業員が返されます。
以上がSQL Server のビューにパラメータを渡すにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。