Commandes générant des résultats dans plusieurs ensembles de lignes
Le fournisseur OLE DB SQL Server Native Client peut retourner plusieurs ensembles de lignes à partir d'instructions SQL Server. Les instructions SQL Server retournent des résultats dans plusieurs ensembles de lignes dans les conditions suivantes :
des instructions SQL groupées sont soumises en tant que commande unique ;
des procédures stockées implémentent un lot d'instructions SQL ;
des instructions SQL incluent la clause Transact-SQL COMPUTE ou COMPUTE BY.
Lots
Le fournisseur OLE DB SQL Server Native Client reconnaît le point-virgule comme un séparateur de lot pour les instructions SQL :
WCHAR* wSQLString = L"SELECT * FROM Categories; "
L"SELECT * FROM Products";
Il est plus efficace d'envoyer plusieurs instructions SQL dans un lot que d'exécuter chaque instruction SQL séparément. L'envoi d'un lot réduit les allers-retours sur le réseau entre le client et le serveur.
Procédures stockées
SQL Server retourne un jeu de résultats pour chaque instruction dans une procédure stockée ; ainsi, la plupart des procédures stockées SQL Server retournent plusieurs jeux de résultats.
COMPUTE BY et COMPUTE
La clause Transact-SQL COMPUTE BY génère des sous-totaux dans un jeu de résultats d'une instruction SELECT. La clause COMPUTE génère un total à la fin du jeu de résultats. Le fournisseur OLE DB SQL Server Native Client retourne chaque sous-total COMPUTE BY et le total COMPUTE en tant que résultat d'un ensemble de lignes séparé.