ACCESS 2000 : COMMIT/ROLLBACK
jeanluc
-
teebo Messages postés 33491 Date d'inscription Statut Modérateur Dernière intervention -
teebo Messages postés 33491 Date d'inscription Statut Modérateur Dernière intervention -
Dans une procédure, j'ai un traitement itératif de lecture d'informations d' un recordset pour ensuite procéder à des mises à jour dans une table de la base via l'instruction Docmd.runSQL.
Lors de la lecture itérative des données, certaines informations nécessitent d'annuler les mises à jour faite dans la base.
Comment doit-on utiliser les commandes commit et rollback pour ce type de traitement
Do until rs.eof
s_code = rs.fields.item(0).value
if s_code = "" then
Annuler les modifs faites par l'insert (ROLLBACK)
Sortir de la procédure
else
sql = "INSERT INTO TOTO champ1 (champ1) = valeur"
docmd.RunSql = sql
endif
loop
Valider les modifs de l'insert (COMMIT)
Lors de la lecture itérative des données, certaines informations nécessitent d'annuler les mises à jour faite dans la base.
Comment doit-on utiliser les commandes commit et rollback pour ce type de traitement
Do until rs.eof
s_code = rs.fields.item(0).value
if s_code = "" then
Annuler les modifs faites par l'insert (ROLLBACK)
Sortir de la procédure
else
sql = "INSERT INTO TOTO champ1 (champ1) = valeur"
docmd.RunSql = sql
endif
loop
Valider les modifs de l'insert (COMMIT)
A voir également:
- ACCESS 2000 : COMMIT/ROLLBACK
- Acer quick access - Forum Logiciels
- Access appdata - Guide
- Musique année 2000 clip dessin animé - Forum Musique / Radio / Clip
- Psp 2000 vs 3000 ✓ - Forum PSP
- Exemple base de données access à télécharger gratuit - Forum Access
3 réponses
Euh, a moins que ma memoire flanche ou que la version 2000 est fait des progres par rapport a la 95, COMMIT et ROLLBACK en Access, ca marche pas...
ö,ö  "Il est plus facile de donner des conseils
\_/    que de les appliquer"
ö,ö  "Il est plus facile de donner des conseils
\_/    que de les appliquer"
Ben mon Teebo...
<ton léger>
T'as la mémoire qui flanche,
Tu t'souviens plus très bien,
De quelle couleur étaient ses yeux,
J'crois bien qu'y z'étaient bleus...
</ton léger>
<ton ex-cathedra>
Il faut définir un workspace...
Exemple de code en ACCESS 97 :
Dim Ws As Workspace
Set Ws = DBEngine.Workspaces(0)
Ws.BeginTrans
...Traitement...
if Traitement-ok then
Ws.CommitTrans
else
Ws.Rollback
endif
Faut pas oublier de réinitialiser ws après (sinon ça bouffe de la mémoire)
</ton ex-cathedra>
A+ Blux "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"
<ton léger>
T'as la mémoire qui flanche,
Tu t'souviens plus très bien,
De quelle couleur étaient ses yeux,
J'crois bien qu'y z'étaient bleus...
</ton léger>
<ton ex-cathedra>
Il faut définir un workspace...
Exemple de code en ACCESS 97 :
Dim Ws As Workspace
Set Ws = DBEngine.Workspaces(0)
Ws.BeginTrans
...Traitement...
if Traitement-ok then
Ws.CommitTrans
else
Ws.Rollback
endif
Faut pas oublier de réinitialiser ws après (sinon ça bouffe de la mémoire)
</ton ex-cathedra>
A+ Blux "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"