Forums Neueste Beiträge
 

Trigger für Autowert in Oracle

13/07/2009 - 15:38 von NewsGroup | Report spam
Hallo Newsgroup,
möchte bei Oracle-DB mit Access Frontend in Oracle eine Autowert Spalte mit
folgendem Trigger realisieren:

CREATE OR REPLACE TRIGGER "TAB1_TRIG" BEFORE
INSERT ON "TAB1" REFERENCING OLD as OLD NEW as NEW
FOR EACH ROW
Declare
LAST_ID Number(10);
BEGIN
IF :NEW.TAB1_ID IS NULL THEN
SELECT TOP 1 TAB1_ID Into LAST_ID FROM TAB1 Order By TAB1_ID desc;
IF LAST_ID is Null Then
LAST_ID := 1;
END IF;
:NEW.TAB1_ID := LAST_ID + 1;
END IF;
END;
/

Leider gelingt es mir nicht, die Schreibweise der gewünschten Befehlsfolge
zu herauszufinden, dass diese von Oracle akzeptiert wird.
Ich habe eine Tabelle TAB1 mit dem Primàrschlüsselfeld TAB1_ID.
Bei jedem Einfügen eines neuen Datensatzes, bei dem das Feld TAB1_ID nicht
belegt ist, soll der höchste bisher vergebene Wert herausgefunden werden und
dieser um eins erhöht werden. Um Access nicht mit dieser Funktionalitàt zu
belasten, möchte ich dieses Verhalten als Trigger in der Oracle Datenbank
realisieren.

Mit freundlichen Grüßen
Matthias Popp
 

Lesen sie die antworten

#1 Lutz Uhlmann
13/07/2009 - 16:29 | Warnen spam
Gibt es bei Oracle nicht diese Sequenzen um "Autowerte" in Spalten einzutragen?

Ähnliche fragen