ACCESS 2000 : COMMIT/ROLLBACK

jeanluc -  
teebo Messages postés 33585 Date d'inscription   Statut Contributeur 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)

3 réponses

  1. teebo Messages postés 33585 Date d'inscription   Statut Contributeur Dernière intervention   1 797
     
    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...

    ö,ö&nbsp&nbsp"Il est plus facile de donner des conseils
    \_/&nbsp&nbsp&nbsp&nbspque de les appliquer"
    0
  2. blux Messages postés 5033 Date d'inscription   Statut Modérateur Dernière intervention   3 455
     
    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"
    0
    1. Teebo
       
      Arf, oui, pris comme ca ca me dit bien quelque chose, mais en fait je croyais que c'etait un truc Oracle...

      Autant pour moi :-)
      0
  3. blux Messages postés 5033 Date d'inscription   Statut Modérateur Dernière intervention   3 455
     
    aaahhhhhhh !!!!!!!

    ça fait un bien fou de bâcher un modo ! ;-)))))))))))

    A+ Blux            "Les cons, ça ose tout.
    C'est même à ça qu'on les reconnait"
    0
    1. teebo Messages postés 33585 Date d'inscription   Statut Contributeur Dernière intervention   1 797
       
      MDR

      Modo ca veut pas dire Monstre Omnipresent Depourvu d' Oublis hein!!! :-DDDD

      ö,ö  "Il est plus facile de donner des conseils
      \_/    que de les appliquer"
      0