I’m currently having an issue with a trigger I’m writing. I want to do a simple trigger in which after an update to table STATEMENT with the status field set to ‘Sent’, it would create a new row in the table NOTICE with fields such as id, date, user and the last field being a message which takes certain field values to create a “notice”.
If it will help, my STATEMENT table contains the following fields:
- id
- List item
- Title
- Others not needed to know
So, with the last field of the NOTICE to be inserted, I want to create like a message, perhaps saying “The statement, (id) – (title), issued on (date) has been sent.”
I currently have at the moment:
create trigger send_notice
after update on STATEMENT
for each row
when (new.status = 'Sent')
begin
insert into NOTICE values (notice_seq.nextval, SYSDATE, '10001', 'the notice
im having trouble constructing');
end send_notice;
I have tested this trigger in a database and everything seems to work fine. Another thing I was just wondering is if the formatting or if there is anything missing that might help with this trigger? And also, I would I go about creating that notice, which takes field values from STATEMENT?
Any help is appreciated
You can refer to new STATEMENT column values in the trigger using :new., and concatenate them into your text:
Sometimes concatenating a lot of text and values can get confusing, and you may find it easier to use this “template” approach: