SQLROLLBACK( )-Funktion
Macht alle Änderungen, die während der aktuellen Transaktion vorgenommen wurden, rückgängig.
SQLROLLBACK(nConnectionHandle)
Rückgabewerte
Numerisch
Parameter
- nConnectionHandle
Gibt das Verbindungshandle der Datenquelle an, das von SQLCONNECT( ) zurückgegeben wird.
Hinweise
SQLROLLBACK( ) gibt 1 zurück, wenn die Transaktion erfolgreich zurückgesetzt wurde. Andernfalls wird -1 zurückgegeben. In diesem Fall können Sie mit AERROR( ) ermitteln, warum die Transaktion nicht zurückgesetzt werden konnte.
Wenn manuelle Transaktionen aktiv sind (die Transactions-Eigenschaft von SQLSETPROP( ) ist auf Manual eingestellt), können Sie mehrere Aktualisierungsvorgänge an Remotetabellen senden. Alle Aktualisierungen können mit SQLROLLBACK( ) zurückgesetzt werden.
Aktualisierungen können mit Hilfe von SQLCOMMIT( ) übergeben werden.
Beispiel
Im folgenden Beispiel wird davon ausgegangen, dass SQLCONNECT( ) erfolgreich ausgeführt und der entsprechende Rückgabewert in der Speichervariablen gnConnHandle
gespeichert wird. Die Transactions-Eigenschaft wird mit SQLSETPROP( ) auf 2 (Manual) gesetzt. Dann können Sie SQLCOMMIT( ) und SQLROLLBACK( ) verwenden.
Die Tabelle authors
wird mit Hilfe von SQLEXEC( ) geändert. Die Änderungen werden mit SQLROLLBACK( ) aufgehoben.
= SQLSETPROP(gnConnHandle, 'Transactions', 2) && manual
= SQLEXEC(gnConnHandle, "INSERT INTO authors (au_id, au_lname);
VALUES ('aupoe', 'Poe')")
= SQLROLLBACK(gnConnHandle)