Hallo,
ich benutze eine
IB-Datenbank un habe dort einen Before-Insert-Trigger erstellt, der mir einige Felder berechnet. Füge ich nun einen Datensatz per INSERT ein, wird eine ID im Trigger generiert und die anderen Felder berechnet.
Nun zu meiner Frage. Wie bekomme ich die ID und die berechneten Felder zurück?
Code:
var
i: integer;
begin
ibsql1.sql.clear;
ibsql1.SQL.Add('insert into MyTable (MyIntWert) values (20);');
ibsql1.ExecQuery;
ibsql1.sql.clear;
ibsql1.SQL.add('commit retain;');
ibsql1.ExecQuery;
i:=ibsql1.FieldByName('ID').AsInteger; // Hier bekomme ich immer einen Fehler, daß das Feld nicht existiert
Muss ich hier in diser Procedure was ändern oder muss ich in meinem Trigger irgendwie einen Wert zurückgeben? Wenn Ja, wie?
ciao und schon mal vielen Dank für eure Mühe
PS : Vielleicht sollte ich noch sagen, ich benötige dafür keine Ausgabe auf dem Bildschirm. Ich möchte nur mit den Errechneten Feldern meines Triggers in meinem Delphi-Progi weiter rechnen.