Moin !
Erstmal danke mkinzler !!
Hätte da aber nochmal ne Frage. Ich komme mit dem UniDac noch nicht ganz klar. Und ich denke es liegt daran, das ich derzeit meist
ADO verwendet habe. Und dort hat man eine DataSet Componente. Die ist einfacher zu handhaben als ein
Query (zumindest für mich im moment
).
Was ich auch hinbekomme ist ein Append mit
Query:
Delphi-Quellcode:
Query.Close;
Query.SQL.Text := '
select * from DataStore where 1=0;';
Query.Active := True;
Query.Edit;
Query.FieldByName('
ID').AsInteger := 12;
Query.FieldByName('
FIELD1').AsWideString := '
Hallo';
Query.append;
Was nicht geht ist eine Max Abfrage:
Delphi-Quellcode:
Query.Close;
Query.SQL.Text := '
Select max(ID) from DataStore;';
Query.Active := True;
Da kriege ich den Fehler dass das Feld ID nicht gefunden werden kann.
erstaunlich ist aber, das ich das im Queryeditor mit genau dem Statement problemlos auslesen kann
Und könnte mir jemand sagen wie ich das mit einem AutoInc Feld mache?
Ich habe in meiner Datenbank einen entsprechenden Trigger definiert und einen Generator:
TRIG_AUTOINCID
SQL-Code:
AS
BEGIN
if (NEW.ID is NULL) then NEW.ID = GEN_ID(AUTOINCID, 1);
END
Der AutoInc funktioiert auch wenn ich mit einem
DB admin Tool einen neuen Datensatz anlege.
Doch wie kann ich den Trigger mittels UniDac nutzen und auch beim anlegen gleich die generierte ID zurück bekommen?