Einzelnen Beitrag anzeigen

Emwykey

Registriert seit: 27. Aug 2013
51 Beiträge
 
#1

Firebird 2.5 Generator falsch - Trigger FireDAC

  Alt 6. Feb 2018, 10:36
Datenbank: Firebird • Version: 2.5 • Zugriff über: FireDAC
Hallo zusammen,

ich habe seit längerem das Problem, dass Generatoren auf unerklärlichen Wegen plötzlich die falschen Werte enthalten.
Besonders kurios ist folgender Fall:

in Tabelle1 werden über Trigger ( Before Insert, Before Delete und Before Update ) alte Daten in die Tabelle1_Archiv übernommen.
Die ID der Tabelle1_Archiv wird über einen Trigger ( Before Insert )
Code:
CREATE TRIGGER TABELLE1_ARCHIV_BI FOR TABELLE1_ARCHIV BEFORE INSERT POSITION 0 As Begin  If (New.ID is null) then New.ID = Gen_ID(ID_GEN_Tabelle1_Archiv, 1 ); end
geführt.
Die Tabelle Tabelle1_Archiv wird nie manuell angesprochen. Der zugehörige Generator ebenso nicht.
Es gibt keine Bedingung für den Log, er wird immer durchgeführt sobald Tabelle1 bearbeitet wird.

Denoch passiert es, dass von jetzt auf nachher der Wert des Generators zur Tabelle1_Archiv nicht mehr stimmt und somit natürlich auch das Insert/Update/Delete auf Tabelle1 fehlschlägt.

Woran könnte das liegen?
Danke im Voraus!!
  Mit Zitat antworten Zitat