Nein, hat sie nicht. Das Problem ist, dass ich die Datenstruktur nicht so einfach ändern kann, da mit einem alten Programm noch mindestens 7 Monate (parallel über den Datenbankserver) darauf zugegriffen werden muß und das alte Programm äußerst empfindlich auf Änderungen in den Tabellen reagiert
. Deshalb auch der Lösungsansatz über LastRowId() (es handelt sich um den Advantage DataBase Server).
Folgendes funktioniert:
Code:
cRowId := FDConnection.ExecSQLScalar(
'insert into TableName( Name ) values( ''Müller'' );'+
'select top 1 LastRowId() LastRowId from TableName' );
Nur ich brauche eine Lösung mittels FDQuery.Insert...FDQuery.Post und anschließend die RowId.
Vielleicht habe ich einen Fehler, wenn FDQuery.Post ausgeführt wird (da passiert noch einiges mehr) und dadurch die RowId nicht mehr verfügbar ist...
Mal sehen, was ich heute Nacht oder morgen noch hinbekomme
.