Hvis du forespørger på alle posterne i en enkelt forespørgsel og trækker dem tilbage på én gang, er det ikke nødvendigt. Alt er pakket ind i en implicit transaktion. Det vil sige, at selvom du får en million poster tilbage, og selvom andre processer ændrer posterne, vil du se, hvordan alle en million poster så ud på samme tidspunkt.
De eneste gange, du virkelig har brug for en transaktion (og ofte et specifikt låsetip) i en skrivebeskyttet proces er:
- Du læser posterne "stykvis" og behøver intet andet for at ændre værdierne, mens du taler dog. [Såsom et tilsluttet recordset i ADO, som du så markører gennem.]
- Du læser nogle data, laver nogle beregninger og læser derefter nogle relaterede data, men ud fra den antagelse, at intet ændrede sig i mellemtiden.
Kort sagt, du har brug for transaktioner, når du ønsker, at andre processer skal forhindres i at forstyrre dine data mellem SQL-sætninger.