Accélérez les insertions de bases de données avec SqlBulkCopy
L'insertion de grands DataTables ligne par ligne est inefficace. La classe SqlBulkCopy
offre une solution beaucoup plus rapide pour l'insertion de données en masse dans les bases de données SQL Server.
Tout d’abord, établissez une connexion à la base de données. Ensuite, créez un objet SqlBulkCopy
, fournissant la chaîne de connexion. Vous pouvez également personnaliser des options telles que la gestion des colonnes d'identité lors de la création.
Il est essentiel de mapper vos colonnes DataTable aux colonnes de la table de base de données correspondantes. Si les noms des colonnes s'alignent, copiez-les simplement dans bulkCopy.ColumnMappings
. Sinon, mappez-les manuellement.
Enfin, précisez votre table cible et, éventuellement, un timeout, puis appelez WriteToServer
. Cet appel unique effectue l'insertion en masse, améliorant considérablement les performances par rapport aux insertions de lignes individuelles.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!