Utilisation de transactions [VBScript] - VB/VBA/VBS - Programmation
Marsh Posté le 21-11-2005 à 14:03:00
c'est surement parce que Access ne supporte pas les transactions
Marsh Posté le 22-11-2005 à 10:47:37
Harkonnen a écrit : c'est surement parce que Access ne supporte pas les transactions |
Bonjour,
J'ai déjà utilisé des transactions dans du code d'importation de données
|
Si qqn a une réponse sur VBS ...
Marsh Posté le 22-11-2005 à 12:26:27
ah oui, mais là tu fais tes transactions au niveau du code métier, pas au niveau du SGBD
Marsh Posté le 22-11-2005 à 14:17:07
Harkonnen a écrit : ah oui, mais là tu fais tes transactions au niveau du code métier, pas au niveau du SGBD |
Tu peux préciser ???
c'est-à-dire que je ne fais pas de connexion base à base ... ?
Mais où est la solution pour mon script vbs d'échange de données par insert et update ?
Marsh Posté le 22-11-2005 à 17:47:27
en relisant ton code, je m'aperçois que je t'ai peut etre dit une connerie...
quel est le message d'erreur exact que ce code te renvoie ?
Marsh Posté le 23-11-2005 à 11:55:43
Harkonnen a écrit : en relisant ton code, je m'aperçois que je t'ai peut etre dit une connerie... |
Erreur : [Microsoft][Pilote ODBC Microsoft Access] Instruction non valide; 'DELETE', 'INSERT', 'PROCEDURE', 'SELECT' ou 'UPDATE' attendus
Code : 8004E14
Source : Microsoft OLE DB Provider for ODBC Drivers
Si ça peut t'aider à me proposer une solution, je suis preneuse.
Comme j'exécute des requêtes d'insertion et aussi de MAJ par un script batch : les transactions sont essentielles.
Merci.
Marsh Posté le 21-11-2005 à 13:59:39
Bonjour,
J'utilise des transactions pour gérer les insertions de données d'Access dans SQL Server (plus précisément MSDE).
Je voudrais faire la même chose dans le sens MSDE vers Access.
Mais là, ma syntaxe pour commencer mes transactions est rejetée :
cmd.ActiveConnection = cnnAccess
cmd.CommandText = "DBEngine.BeginTrans"
cmd.Execute
cmd.ActiveConnection = cnnAccess
cmd.CommandText = insQuery ' équivalent à insert into ... ou updQuery --> update ...
cmd.Execute
et comment tester quelles intructions suivantes est à suivre selon le succès ou l'échec de l'exécution de la requête
cmd.ActiveConnection = cnnAccess
cmd.CommandText = "DBEngine.CommitTrans"
cmd.Execute
cmd.ActiveConnection = cnnAccess
cmd.CommandText = "DBEngine.Rollback"
cmd.Execute
Merci pour votre aide.