Versuche es eher mal so:
Code:
Query.SQL.Text:='INSERT INTO....';
if Transaction.InTransaction then
TransaCtion.Commit;
Transaction.StartTransaction;
Query.ExecQuery;
Transaction.Commit;
Anschließend schaust Du in der IBConsole/... nach ob der Datensatz vorhanden ist. Aber Achtung! Auch dort gibt es Transaktionen die evtl. am laufen sind, d.h. am besten nach dem Insert/Update die Datenbankconnection schließen und neu öffnen, dann sollte aber wirklich alles i.O. sein.
Grüße
Lemmy