hallo zusammen
es geht um sql server und transaktionen.
im netz sieht man immer wieder beispiele mit diesen befehlen, und zwar immer in dieser art
...mir ist klar, dass die anweisung "BEGIN TRANSATION" immer verwendet werden muss. allerdings ist mir nicht klar, wie bspw. "COMMIT TRANSACTION" verwendet werden muss.
ist es fakt, dass bei meinem beispiel mit "COMMIT TRANSACTION" alle instruktionen dazwischen ('...') nur ausgeführt werden wenn keine einzige anweisung davon fehlschlägt? wenn ja: für was braucht es denn überhaupt einen ROLLBACK-befehl? ist der dafür da um die transaktion rückgängig zu machen, wenn diese NICHT fehlgeschlagen ist? (=alle teilschritte ausgeführt)
und wie ist es in meinem beispiel mit "ROLLBACK TRANSACTION"? dort gibt es kein explizites commit. wie kann das gehen? (man sieht ständig die beiden beispiele von mir im netz, jedoch praktisch nix was alle 3 befehle verwendet: BEGIN, COMMIT & ROLLBACK...
ich möchte mich jetzt nicht auf mehrschichtige transaktionen beziehen, eine erklärung mit einem hello-world-beispiel wäre hilfreich! vielen dank!
es geht um sql server und transaktionen.
im netz sieht man immer wieder beispiele mit diesen befehlen, und zwar immer in dieser art
SQL:
BEGIN TRANSATION
...
...
...
ROLLBACK TRANSACTION
SQL:
BEGIN TRANSACTION
...
...
...
COMMIT TRANSACTION
...mir ist klar, dass die anweisung "BEGIN TRANSATION" immer verwendet werden muss. allerdings ist mir nicht klar, wie bspw. "COMMIT TRANSACTION" verwendet werden muss.
ist es fakt, dass bei meinem beispiel mit "COMMIT TRANSACTION" alle instruktionen dazwischen ('...') nur ausgeführt werden wenn keine einzige anweisung davon fehlschlägt? wenn ja: für was braucht es denn überhaupt einen ROLLBACK-befehl? ist der dafür da um die transaktion rückgängig zu machen, wenn diese NICHT fehlgeschlagen ist? (=alle teilschritte ausgeführt)
und wie ist es in meinem beispiel mit "ROLLBACK TRANSACTION"? dort gibt es kein explizites commit. wie kann das gehen? (man sieht ständig die beiden beispiele von mir im netz, jedoch praktisch nix was alle 3 befehle verwendet: BEGIN, COMMIT & ROLLBACK...
ich möchte mich jetzt nicht auf mehrschichtige transaktionen beziehen, eine erklärung mit einem hello-world-beispiel wäre hilfreich! vielen dank!
Zuletzt bearbeitet: