![]() |
Firebird: Generierte ID ermitteln ?
Hallo,
ich möchte nach einem Post den zuletzt bearbeiteten Datensatz noch mal ausgewählen und brauche dafür die generierte ID. Es gibt ein Beispiel unter Interbase: Generierte ID ermitteln ? Aber da ich noch nicht mit Stored Procedure gearbeitet habe, weis ich nicht wie ich das Beispiel umsetzen soll. Meine Tabelle heist T_Auftrag und der Generator GEN_DS_AUFTRAG. Wer kann mir helfen? |
Re: Firebird: Generierte ID ermitteln ?
Hallo Rolf,
wenn ich nach dem Posten die ID haben will, hole ich mir mit einer StoredProc vor dem Post die nächste GeneratorID. Dafür habe ich in der Datenbank eine StoredProc angelegt. Hier die Metadaten
Code:
Mit folgender Funktion hole ich im Programm dann die GeneratorID
COMMIT WORK;
SET AUTODDL OFF; SET TERM ^ ; /* Stored procedures */ CREATE PROCEDURE "GET_MAIL_ID" RETURNS ( "NEWID" INTEGER ) AS BEGIN EXIT; END ^ ALTER PROCEDURE "GET_MAIL_ID" RETURNS ( "NEWID" INTEGER ) AS BEGIN NewID = GEN_ID(DBFILES_GEN,1); END ^ SET TERM ; ^ COMMIT WORK; SET AUTODDL ON;
Delphi-Quellcode:
function TDBM_Main.GetNewMailID: Integer;
begin Result:=-1; IBTransaction.StartTransaction; Try IBStoredProcMailID.ExecProc; Result:=IBStoredProcMailID.Params[0].AsInteger; Finally IBTransaction.Commit; end; end; |
Re: Firebird: Generierte ID ermitteln ?
Wozu der Aufwand mit der Procedure ?
Geht doch auch mit dieser kurzen SQL Anweisung:
SQL-Code:
select gen_id(dbfiles_gen,1) from rdb$database
Gruß, Marcel |
Re: Firebird: Generierte ID ermitteln ?
Zitat:
|
Re: Firebird: Generierte ID ermitteln ?
Delphi-Quellcode:
Habe ich ausprobiert und.... es funzt.
select gen_id(dbfiles_gen,1) from rdb$database
Danke |
Re: Firebird: Generierte ID ermitteln ?
:-D Danke Jungs, ihr wart mir mit diesem Threat sehr hilfreich...
Genau diese Prozedur hab ich gesucht!! Delphi-Praxis is halt immer der erste Platz wo gesucht wird wenn ma was ned klappt! Hier ein virtuelles Bier für euch : :cheers: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22: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