![]() |
Datenbank: FIREBIRD • Version: 3 • Zugriff über: Fibplus
Firebird 3 Rückgabe ID nach Insert durch internen Sequenz Generator
Hallo, mit IBExperts habe ich eine neue Firebird 3 Datenbank Sql Dialekt 3 angelegt. Dabei die Möglichkeit getestet, den internen Sequenzgenerator zum Erzeugen der ID zu verwenden. Daurch erspare ich das Anlegen eines Triggers oder das Erzeugen einer neuen ID aus den Programm heraus.
Nun suche ich nach einer Möglichkeit, die ID nach einem Insert direkt zurück zu bekommen. Zurzeit mache ich das mit Select Max(...), was aber eine zusätzliche Abfrage erfordert. Möglicherweise kann das ja FireDAC. |
AW: Firebird 3 Rückgabe ID nach Insert durch internen Sequenz Generator
Hallöle...8-)
...wie wäre es mit returning <Feldname> ? ![]()
Delphi-Quellcode:
Variable := Query.FieldByName('RET_<Feldname>').AsInteger
... :wink: |
AW: Firebird 3 Rückgabe ID nach Insert durch internen Sequenz Generator
Hallo haentschman
Danke, das funtioniert wunderbar :thumb:. Returnig habe ich bisher noch nie verwendet. Werde ich mir merken. |
AW: Firebird 3 Rückgabe ID nach Insert durch internen Sequenz Generator
Zitat:
![]() Zitat:
|
AW: Firebird 3 Rückgabe ID nach Insert durch internen Sequenz Generator
Wenn mal Zeit ist, sollt mal von FIBPlus auf FirDAC umgesellt werden. Aber dass ist nicht an einem Tag gemacht.
Was das Returning betrifft hat das TpFIBDataSet noch einen BUG in AutoGenerateSQLText, da hier AutoUpdateOptions.UseReturningFields nicht berücksichtigt wurde. Das konnte ich aber noch korrigieren, so dass hier nach dem Post die ID im Grid angezeigt wird. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:37 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz