L'utilisation des fonctions d'insertion par lots du .NET DataAdapter est-elle plus efficace, en ce qui concerne les allers-retours DB, que l'utilisation de DbCommand.ExecuteNonQuery() dans une boucle? Venant du monde Java, j'espérais trouver quelque chose de similaire à ses capacités batch où plusieurs commandes SQL sont envoyées à la base de données et exécutées en une seule opération. Lors de la surveillance du serveur de base de données, je vois le DataAdapter en faisant une exécution par insertion.Insertions SQL par lots dans .NET
J'ai lu quelques sujets qui utilisent le SqlBulkCopy, mais cela ne fonctionnera que pour MS Sql Server.
Merci!
Il s'agit du seul niveau prenant en charge le traitement par lots de commandes. Vous ne pouvez pas lotir vos propres DbCommands (sans exposer certaines classes internes avec Reflection). –
J'ai essayé ça. Sur MS SQL Server, SQL Profiler montre que chaque instruction d'insertion semble être indépendante. Après avoir examiné votre commentaire, j'ai vu un TCP Dump de la conversation et je vois qu'il est en train de grouper plusieurs commandes ensemble. SQL Profiler affiche chaque insertion en tant qu'événement "RPC Completed" qui me déroutait. Merci de votre aide. –