Ich habe ein ähnliches Problem, wenn ich mittels Insert / Post einen Datensatz anlege und RowId des neu angelegten Datensatzes bestimmen möchte:
Code:
FDQuery.Insert;
FDQuery.FieldByName( 'Name' ).value := 'Müller';
...
FDQuery.Post;
RowId := FDConnection.ExecSQLScalar( 'select top 1 LastRowId() LastRowId from Personen' );
Da kommt leider immer nur #0#0#0#0... heraus. Was mache ich falsch?