Toon posts:

[VBA] Rollback

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik voer in access vba de volgende statements uit

on error goto error_err
err_msg = "Query1 fout"
qd = bladiebla
qd.execute DbFailOnError

err_msg = "Query2 fout"
qd = bladiebla
qd.execute DbFailOnError

err_msg = "Query3 fout"
qd = bladiebla
qd.execute DbFailOnError

Als hij nu een fout maakt bij de derde, dan rollbacked die die query wel, maar de eerste twee niet. Is er een mogelijkheid om ze allemaal uit te voeren, en als hij een fout maakt ze allemaal te undoen??
:)

Verwijderd

Een DAO.Workspace declareren en daarbinnen je transacties uitvoeren...

  • Crazy D
  • Registratie: Augustus 2000
  • Laatst online: 08:12

Crazy D

I think we should take a look.

Hmm als de 3e query een error geeft, wordt ie niet uitgevoerd. Da's wat anders dan rollback.

Ik weet niet hoe je in VBA (met DAO) een transactie opzet, maar in nep-code krijg je iets als:
code:
1
2
3
4
5
6
7
8
9
10
Begin Transactie

Query1
Query2
Query3
If geen_fouten Then
    Submit Transactie
Else
    Rollback Transactie
End If

Exact expert nodig?


Verwijderd

Topicstarter
Dat doe ik ook, heb ik alleen niet in de code gezet. Hij werkt nu door de variable met option explicit en dim bladiebla buiten de transaction te zetten.