DB_BeginWork

Beschreibung


Öffnet eine neue explizite Transaktion auf der Datenbank.

Prototyp


DB_BeginWork()

Parameter


Keine Parameter

Rückgabewerte


Nummer

Typ

Bedeutung

Nummer

Typ

Bedeutung

1

boolean

immer true

Hinweise


  • Diese Funktion muss vor DB_CommitWork oder DB_RollbackWork gerufen werden.

  • Explizite Transaktionen dürfen nur in Skripten nur verwendet werden, wenn der Skriptaufruf selbst sich nicht bereits innerhalb einer expliziten Transaktion befindet.

  • Manche Funktionsaufrufe sind möglicherweise nicht mit eigenen expliziten Transaktionen kompatibel, da dort ebenfalls eine Transaktion geöffnet wird (statt Savepoints).

  • Tritt ein Fehler beim Öffnen der Transaktion auf, wird das Programm vollständig beendet.

Beispiele


--[[ Das Programm demonstriert die Verwendung von DB_BeginWork, DB_CommitWork und DB_RollbackWork. --]] local args = { ... } local trockenlauf = args[1] or 1 -- Neue explizite Transaktion öffnen DB_BeginWork() SQL_Exec( "UPDATE arttab SET artbez5 = 'Artikelbezeichnung 5' WHERE finr = " .. SysLogFinr .. " AND artnr = '1000'" ) if trockenlauf == 1 then -- Änderungen zurückfahren (Artikelbezeichnung bleibt auf vorherigem Wert) DB_RollbackWork() else -- Änderungen anwenden (Artikelbezeichnung wird geändert) DB_CommitWork() end

 

Â