SQL Server - Transaktionen auf Fehler zurücksetzen?

Wir haben eine Client-App, die SQL auf einem SQL Server 2005 ausführt, wie zum Beispiel die folgende:

BEGIN TRAN;
INSERT INTO myTable (myColumns ...) VALUES (myValues ...);
INSERT INTO myTable (myColumns ...) VALUES (myValues ...);
INSERT INTO myTable (myColumns ...) VALUES (myValues ...);
COMMIT TRAN;

Es wird mit einem langen Zeichenfolgenbefehl gesendet.

Wenn eine der Einfügungen fehlschlägt oder ein Teil des Befehls fehlschlägt, setzt SQL Server die Transaktion zurück? Wenn dies nicht der Fall ist, muss ich einen zweiten Befehl senden, um das Rollback durchzuführen?

Ich kann Details zu der von mir verwendeten API und Sprache angeben, aber ich denke, SQL Server sollte für jede Sprache gleich reagieren.

Antworten auf die Frage(5)

Ihre Antwort auf die Frage