ich habe nun nach den Hinweisen von Stephan den Code verändert:
Delphi-Quellcode:
qMain.Params.Clear;
qMain.SQL.Text:='SELECT * FROM KONTAKTE';
//qMain.SQL.Text := 'SELECT LAST_INSERT_ROWID() AS ID FROM KONTAKTE';
qMain.Open;
if qMain.RecordCount >0 then begin
currentID := qMain.FieldByName('ID').AsString;
end else begin
MessageDlg('LAST_INSERT_ROWID() liefert kein Ergebnis.',mtError,[mbok],0);
end;
qMain.Close;
Nun wird der neue Datensatz mit einer ID=1 ausgewiesen darbestellt. Nach Neuaufruf des Programms jedoch mit der entsprechenden ID der
DB. Nun ist jedoch diese Funktion LAST_INSERT_ROWID() AS ID FROM KONTAKTE raus.Kann das so bleiben oder ist das eher Stückwerk?
Ich möchte das Programm möglichst so schreiben, dass ich es als Muster zum Lernen verwende und da sollte möglichst alles stimmen.