Änderungen einer Transaktion verwerfen mit SQL ROLLBACK

Anwendung

SQL ROLLBACK verwirft alle Änderungen und Ergänzungen einer Transaktion. Die Transaktion ist durch das anzugebende HANDLE definiert.

Voraussetzungen

  • Schlüsselzahl 555343
  • Tabelle vorhanden
  • Geeigneter Tabellenname
  • Die Namen von Tabellen und Tabellenspalten müssen mit einem Buchstaben beginnen und dürfen keine Rechenzeichen, z. B. + beinhalten. Diese Zeichen können aufgrund von SQL-Befehlen beim Einlesen oder Auslesen von Daten zu Problemen führen.

Funktionsbeschreibung

SQL_ROLLBACK
Schwarze Pfeile und zugehörige Syntax zeigen interne Abläufe von SQL ROLLBACK. Graue Pfeile und zugehörige Syntax gehören nicht unmittelbar zu dem Befehl SQL ROLLBACK.
  • Die Funktion des SQL-Befehls SQL ROLLBACK ist abhängig vom INDEX:
  • Ohne INDEX:
    • Die Steuerung verwirft alle Änderungen und Ergänzungen der Transaktion
    • Die Steuerung setzt eine mit SELECT...FOR UPDATE gesetzte Sperre zurück
    • Die Steuerung schließt die Transaktion ab (das HANDLE verliert seine Gültigkeit)
  • Mit INDEX:
    • Ausschließlich die indizierte Zeile bleibt im Result-set erhalten (die Steuerung entfernt alle anderen Zeilen)
    • Die Steuerung verwirft alle eventuellen Änderungen und Ergänzungen in den nicht angegebenen Zeilen
    • Die Steuerung sperrt ausschließlich die mit SELECT...FOR UPDATE indizierte Zeile (die Steuerung setzt alle anderen Sperren zurück)
    • Die angegebene (indizierte) Zeile ist nachfolgend die neue Zeile 0 des Result-set
    • Die Steuerung schließt die Transaktion nicht ab (das HANDLE behält seine Gültigkeit)
    • Späteres manuelles Abschließen der Transaktion mithilfe von SQL ROLLBACK oder SQL COMMIT ist notwendig

Eingabe

Die im Benutzerhandbuch enthaltenen NC-Programme sind Lösungsvorschläge. Bevor Sie die NC-Programme oder einzelne NC-Sätze an einer Maschine verwenden, müssen Sie sie anpassen.

  • Passen Sie folgende Inhalte an:
  • Werkzeuge
  • Schnittwerte
  • Vorschübe
  • Sichere Höhe oder sichere Positionen
  • Maschinenspezifische Positionen, z. B. mit M91
  • Pfade von Programmaufrufen

Einige NC-Programme sind abhängig von der Maschinenkinematik. Passen Sie diese NC-Programme vor dem ersten Testlauf an Ihre Maschinenkinematik an.

Testen Sie die NC-Programme zusätzlich mithilfe der Simulation vor dem eigentlichen Programmlauf.

 
Tip

Mithilfe eines Programmtests stellen Sie fest, ob Sie das NC-Programm mit den verfügbaren Software-Optionen, der aktiven Maschinenkinematik sowie der aktuellen Maschinenkonfiguration verwenden können.

11 SQL ROLLBACK Q1 HANDLE Q5 INDEX 5

; Alle Zeilen der Transaktion Q5 außer Zeile 5 löschen

Die NC-Funktion enthält folgende Syntaxelemente:

Syntaxelement

Bedeutung

SQL ROLLBACK

Syntaxeröffner für den SQL-Befehl ROLLBACK

Q/QL/QR oder Q REF

Variable, in der die Steuerung das Ergebnis speichert

HANDLE

Q-Parameter mit der Identifikation der Transaktion

INDEX

Zeilennummer innerhalb des Result-set als Nummer oder Variable, die erhalten bleibt

Ohne Angabe verwirft die Steuerung alle Änderungen und Ergänzungen der Transaktion

Syntaxelement optional

Beispiel

Die im Benutzerhandbuch enthaltenen NC-Programme sind Lösungsvorschläge. Bevor Sie die NC-Programme oder einzelne NC-Sätze an einer Maschine verwenden, müssen Sie sie anpassen.

  • Passen Sie folgende Inhalte an:
  • Werkzeuge
  • Schnittwerte
  • Vorschübe
  • Sichere Höhe oder sichere Positionen
  • Maschinenspezifische Positionen, z. B. mit M91
  • Pfade von Programmaufrufen

Einige NC-Programme sind abhängig von der Maschinenkinematik. Passen Sie diese NC-Programme vor dem ersten Testlauf an Ihre Maschinenkinematik an.

Testen Sie die NC-Programme zusätzlich mithilfe der Simulation vor dem eigentlichen Programmlauf.

 
Tip

Mithilfe eines Programmtests stellen Sie fest, ob Sie das NC-Programm mit den verfügbaren Software-Optionen, der aktiven Maschinenkinematik sowie der aktuellen Maschinenkonfiguration verwenden können.

11 SQL BIND Q881 "Tab_Example.Position_Nr"

12 SQL BIND Q882 "Tab_Example.Measure_X"

13 SQL BIND Q883 "Tab_Example.Measure_Y"

14 SQL BIND Q884 "Tab_Example.Measure_Z"

* - ...

21 SQL Q5 "SELECT Position_Nr,Measure_X,Measure_Y, Measure_Z FROM Tab_Example"

* - ...

31 SQL FETCH Q1 HANDLE Q5 INDEX+Q2

* - ...

41 SQL ROLLBACK Q1 HANDLE Q5