2009-04-16 6 views
0

Ich habe einen Trigger manuell erstellt (durch Einfügen der SQL aus einer anderen Oracle DB in die Management-Konsole), die automatisch den Primärschlüssel einer Tabelle inkrementiert und wenn ich den Trigger im Objektbrowser anschaue Der Trigger wird als ungültig aufgeführt.Warum sollte ein Datenbanktrigger in einer Oracle-DB ungültig sein?

Warum sollte das der Fall sein? Hier

ist die SQL, die den Trigger neu erstellt:

CREATE OR REPLACE TRIGGER "BI_AGENTEVENTDATA" 
    before insert on "AGENTEVENTDATA"    
    for each row 
begin 
    select "AGENTEVENTDATA_SEQ".nextval into :NEW.ID from dual; 
end; ; 
/
ALTER TRIGGER "BI_AGENTEVENTDATA" ENABLE 
/

Antwort

2

sind Sie sicher, dass die Sequenz vorhanden ist, und kann durch den Trigger verwendet werden?

Try this:

select sequence_name from user_sequences; 
+0

Die Sequenz I fehlte vergessen würde es wandern über ... DOH! –

0

Versuchen Sie, den Abzug ohne "Mit anderen Worten:.

CREATE OR REPLACE TRIGGER "BI_AGENTEVENTDATA" 
    before insert on "AGENTEVENTDATA"    
    for each row 
begin 
    select AGENTEVENTDATA_SEQ.nextval into :NEW.ID from dual; 
end; ; 
/
ALTER TRIGGER "BI_AGENTEVENTDATA" ENABLE 
/
Verwandte Themen