Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.385 Beiträge
 
Delphi 12 Athens
 
#8

AW: AutoInc primary key Feld wird immer auf 0 gesetzt

  Alt 27. Apr 2025, 08:01
Dass es in #2 geht, ist verständlich, da dort die Komponente deine ID-Spalte garnicht kennt, ihr Required somit nie beachtet und weil sie nie im generierten Statement vorkommen kann, sie immer von der DB mit dem Default (AutoInc) gefüllt wird,
aber da Firebird auch ein RETURNING kennt, weil du ja dennoch die ID wissen wolltest ...

SQL-Code:
  FInsertQuery.SQL.Text := 'insert into MY_TEXTS (TEXT) values (:TEXT) returning ID';
  FInsertQuery.ParamByName('TEXT').AsString := Item.Text;
  FInsertQuery.Open;
  Item.ID := FInsertQuery.FieldByName('ID').AsInteger;
  FInsertQuery.Close;
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (27. Apr 2025 um 08:09 Uhr)
  Mit Zitat antworten Zitat