TRIGGER [message #38928] |
Tue, 28 May 2002 13:01 |
adelia
Messages: 45 Registered: April 2001
|
Member |
|
|
Someone has trigger´s examples ? Expecialy Triggers DML.
|
|
|
|
Re: TRIGGER [message #39045 is a reply to message #38928] |
Mon, 10 June 2002 05:12 |
adelia
Messages: 45 Registered: April 2001
|
Member |
|
|
Thanks for all return about Trigger I received.
I´ve done the trigger this way :
create or replace trigger tr_to_OtherMediaFile
after insert or delete or update on MediaFile for each row
When (NEW.MediaFile_MediaType = 1)
declare
v_MediaType OtherMediaFile.OtherMediaFile_MediaType%TYPE;
begin
if inserting then
for v_MediaType in 3 .. 4
loop
insert into OtherMediaFile (OtherMediaFile_ID,OtherMediaFile_MediaType,
OtherMediaFile_URL,OtherMediaFile_SourceFile,
OtherMediaFile_StatusDate,OtherMediaFile_Status,
OtherMediaFile_MediaFileID,OtherMediaFile_StatusErrMsg,
OtherMediaFile_LastStatus)
values (Seq_OtherMediaFile.nextval,v_MediaType,
:NEW.MediaFile_URL,:NEW.MediaFile_SourceFile,
:NEW.MediaFile_StatusDate,decode(v_MediaType,3,4,1),
:NEW.MediaFile_ID,NULL,
NULL);
end loop;
elsif deleting then
delete OtherMediaFile
where OtherMediaFile_MediaFileID = :OLD.MediaFile_ID;
elsif updating then
if :NEW.MediaFile_Status = 6 then
update OtherMediaFile set
OtherMediaFile_URL = :NEW.MediaFile_URL,
OtherMediaFile_SourceFile = :NEW.MediaFile_SourceFile,
OtherMediaFile_Status = 6
where OtherMediaFile_MediaFileID = :OLD.MediaFile_ID;
else
update OtherMediaFile set
OtherMediaFile_URL = :NEW.MediaFile_URL,
OtherMediaFile_SourceFile = :NEW.MediaFile_SourceFile
where OtherMediaFile_MediaFileID = :OLD.MediaFile_ID;
end if;
end if;
end;
/
ok !
|
|
|