複数行セットの結果を生成するコマンド
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";
複数の SQL ステートメントを 1 つのバッチにまとめて送信する方が、各 SQL ステートメントを個別に実行するよりも効率的です。 1 つのバッチを送信することで、クライアントからサーバーへのネットワーク ラウンド トリップが減少するためです。
ストアド プロシージャ
SQL Server は、ストアド プロシージャ内のステートメントごとに結果セットを返します。このため、大半の SQL Server ストアド プロシージャは複数の結果セットを返します。