Du solltest im Trigger
bedingungslos die ID aus dem Generator eintragen.
Warum?
Es könnte sonst es zu Schlüsselverletzungen führen:
Der Generator steht bei 3, aber User trägt selbst 3 ein.
Beim nächsten Insert ohne dass der User eine Id angibt würde der Generator um eins erhöht und versucht eine weitere 3 einzufügen -> Kabumm
Wie kriegst du die Id nach einem Insert?
Bei einem Insert führst du das hier mit
Query.Open aus (nicht ExecSql!):
SQL-Code:
INSERT INTO Produkte
(ProductID
,Bezeichnung)
VALUES
(:ProductID
,:Bezeichnung)
RETURNING Id
In der "Ergebnismenge" findest du die neue ID in der ersten Spalte.