Maison > base de données > tutoriel mysql > Comment puis-je transférer efficacement des ensembles de données volumineux d'Excel vers Access à l'aide de SQL ?

Comment puis-je transférer efficacement des ensembles de données volumineux d'Excel vers Access à l'aide de SQL ?

Mary-Kate Olsen
Libérer: 2025-01-05 07:22:44
original
149 Les gens l'ont consulté

How Can I Efficiently Transfer Large Datasets from Excel to Access Using SQL?

Utilisation de l'instruction d'insertion SQL pour transférer efficacement des données d'Excel vers Access

Dans votre code Excel VBA, vous parcouriez manuellement chaque ligne de données pour insérer des valeurs dans une table Access. Bien que cette approche fonctionne pour les petits ensembles de données, elle devient inefficace pour les grands ensembles de données comme 25 000 enregistrements.

Au lieu de cela, vous pouvez utiliser les instructions SQL INSERT pour insérer plusieurs lignes à la fois, réduisant ainsi considérablement le temps de traitement. Le code révisé suivant montre comment :

Public Sub DoTrans()
  Set cn = CreateObject("ADODB.Connection")
  dbPath = Application.ActiveWorkbook.Path & "\FDData.mdb"
  dbWb = Application.ActiveWorkbook.FullName
  dbWs = Application.ActiveSheet.Name
  scn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dbPath
  dsh = "[" & Application.ActiveSheet.Name & "$]"
  cn.Open scn

  ssql = "INSERT INTO fdFolio ([fdName], [fdOne], [fdTwo]) "
  ssql = ssql & "SELECT * FROM [Excel 8.0;HDR=YES;DATABASE=" & dbWb & "]." & dsh

  cn.Execute ssql

End Sub
Copier après la connexion

En utilisant l'instruction SQL INSERT affichée à la ligne 11, toutes les lignes de la plage Excel sont insérées dans la table Access en même temps. Cela élimine le besoin de boucle et améliore considérablement les performances.

Bien que vous ayez mentionné vouloir spécifier des noms de champs au lieu d'utiliser "SELECT *", le code fourni ne le démontre pas. Si vous avez besoin d'aide pour définir des noms de champs spécifiques, veuillez fournir les noms de champs souhaités et nous pouvons vous aider à modifier le code en conséquence.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal