SQL Server Native Client OLE DB プロバイダーは、SQL Server ステートメントから複数の行セットを返すことができます。 SQL Server ステートメントは、次の条件下で複数行セットの結果を返します。
バッチ処理された SQL ステートメントは、1 つのコマンドとして送信されます。
ストアド プロシージャは、SQL ステートメントのバッチを実装します。
バッチ
SQL Server Native Client OLE DB プロバイダーは、セミコロン文字を SQL ステートメントのバッチ区切り記号として認識します。
WCHAR* wSQLString = L"SELECT * FROM Categories; "
L"SELECT * FROM Products";
1 つのバッチで複数の SQL ステートメントを送信する方が、各 SQL ステートメントを個別に実行するよりも効率的です。 1 つのバッチを送信すると、クライアントからサーバーへのネットワーク ラウンド トリップが削減されます。
ストアド プロシージャ
SQL Server はストアド プロシージャ内の各ステートメントの結果セットを返します。そのため、ほとんどの SQL Server ストアド プロシージャは複数の結果セットを返します。