ストアド プロシージャの使用
ストアド プロシージャは、データベースに格納されている実行可能なオブジェクトです。ストアド プロシージャの呼び出しは、SQL コマンドの呼び出しと似ています。クライアント アプリケーションでステートメントを実行または準備する代わりに、データ ソースに対してストアド プロシージャを使用すると、パフォーマンスの向上、ネットワーク オーバーヘッドの削減、一貫性と正確性の向上などのさまざまな利点が得られます。
ストアド プロシージャは、任意の数 (ゼロを含む) の入力または出力パラメーターを持つことができ、戻り値を返すことができます。パラメーター値を特定のデータ値としてハードコーディングすることも、パラメーター マーカー (疑問符 "?") を使用することもできます。
[!メモ]
Visual C++ を使って作成した CLR の SQL Server ストアド プロシージャは、/clr:safe コンパイラ オプションでコンパイルする必要があります。
SQL Server 用の OLE DB プロバイダー (SQLOLEDB) は、ストアド プロシージャがデータを返すために使用する以下の機構をサポートします。
プロシージャ内のすべての SELECT ステートメントは結果セットを生成します。
プロシージャは、出力パラメーターを通じてデータを返すことができます。
プロシージャは、整数のリターン コードを持つことができます。
[!メモ]
OLE DB Provider for Jet はストアド プロシージャをサポートしていないため、このプロバイダーではストアド プロシージャを使用できません。クエリ文字列には定数だけを使用できます。