AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi 'Merken' des Primary Key nach Posten
Thema durchsuchen
Ansicht
Themen-Optionen

'Merken' des Primary Key nach Posten

Ein Thema von sancho1980 · begonnen am 8. Feb 2006 · letzter Beitrag vom 9. Feb 2006
 
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#6

Re: 'Merken' des Primary Key nach Posten

  Alt 9. Feb 2006, 08:08
Hallo.

Leider befindet sich der vom RDBMS vergebene Schlüssel nach einem Insert nicht im record buffer des Programms. Deshalb hat sich eine andere Vorgehensweise durchgesetzt. Der Generator ist ja schon da:

CREATE GENERATOR "GEN_TBL"; Man definiert einen before insert trigger für die Tabelle:

SQL-Code:
CREATE TRIGGER "TBL_BI0" FOR "TBL"
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
  IF (NEW.id = 0) THEN
    NEW.id = GEN_ID(GEN_TBL, 1);
END
Auf diese Weise wird immer ein konsistenter primary key sicher gestellt. In der Anwendung besorgt man sich dann den nächsten Generator-Wert:

SELECT GEN_ID(GEN_TBL, 1) FROM RDB$DATABASE Den verwendet man dann auch für die foreign keys. Wenn man transaktionsgeschützt arbeitet, dann kann man sich den Schlüssel auch direkt nach der Verwendung besorgen:

SELECT GEN_ID(GEN_TBL, 0) FROM RDB$DATABASE Grüße vom marabu
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:01 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-2025 by Thomas Breitkreuz