* Bonjour *
Avec une seule requête ensembliste, sans passer par un recordset, très lent pour un gros import de données (je suis pas sûr que la requête soit beaucoup plus rapide puisque l'essentiel de la durée de l'import devrait être causé par la latence réseau et par l'écriture disque, mais j'aimerais vérifier quand même).
Je verrais bien une connexion classique puis un Execute :
Sous SQL Jet, la syntaxe de cette requête devrait être la suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Set CnADO = New ADODB.Connection CnADO.Open [chaîne de connexion ADO à la base Access] CnADO.execute [Requête SQL]
Je bute sur la séquence [chaîne de connexion base SQLServer] et je ne trouve aucun exemple.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 INSERT INTO Table_Access (ChampsAccess) SELECT (ChampsSQLServer) FROM Table_SQLServer IN [chaîne de connexion SQL MS Jet à la base SQLServer ]
Est-ce que ce mélange des genres est-il possible ?
Ou bien est-il préférable de lier la table SQL server et ensuite de faire le INSERT INTO ?
Ou bien, encore plus tordu, on crée une connexion OLEDB vers la base SQL Server et dans la requête INSERT INTO on utilise OPENDATASOURCE pour pointer vers la base Access. Bref on ouvrirait deux canaux pour un simple INSERT .....
* Merci d'avance *
Partager