1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
| Public Sub deleteEtInsertAlaFois()
Dim wSp As DAO.Workspace
Dim db As DAO.Database
Set wSp = DBEngine(0)
Set dbC = CurrentDb
On Error GoTo trans_Err
'Démarre la transaction
wSp.BeginTrans
exécuter les commandes SQL
'Les commandes sont exécutées mais gardées en cache
db.Execute "INSERT INTO T2.....WHERE.....", dbFailOnError
'deuxième commande SQL, d'autre commandes SQL peuvent-être 'ajoutées
db.Execute "DELETE FROM T1..... WHERE.....", dbFailOnError
'les changements sont répercutés sur les tables
wSp.CommitTrans dbFlushOSCacheWrites
trans_Exit:
wSp.Close
Set db = Nothing
Set wSp = Nothing
Exit Sub
trans_Err:
'Rollback de la transaction dans le cas ou quelque chose se passe mal
wSp.Rollback
Resume trans_Exit
End Sub |
Partager