-- Table for update trigger
create table student_update_info (
id number primary key,
old_name varchar2(200),
new_name varchar2(200),
time_stamp varchar2(100),
message varchar2(200)
);
id number primary key,
old_name varchar2(200),
new_name varchar2(200),
time_stamp varchar2(100),
message varchar2(200)
);
-- Table for insert and delete trigger
create table student_info (
log_info varchar2(200),
time_stamp varchar2(100)
)
log_info varchar2(200),
time_stamp varchar2(100)
)
-- AFTER INSERT Trigger
CREATE OR REPLACE TRIGGER student_insert_trigger
AFTER INSERT ON student
FOR EACH ROW
BEGIN
-- Code to be executed after insert
-- For example, logging the insertion along with timestamp
INSERT INTO student_info (log_info , time_stamp)
VALUES ('New row inserted', TO_CHAR(SYSTIMESTAMP, 'DD-MON-YYYY HH:MI:SS AM'));
END;
/
AFTER INSERT ON student
FOR EACH ROW
BEGIN
-- Code to be executed after insert
-- For example, logging the insertion along with timestamp
INSERT INTO student_info (log_info , time_stamp)
VALUES ('New row inserted', TO_CHAR(SYSTIMESTAMP, 'DD-MON-YYYY HH:MI:SS AM'));
END;
/
-- After update trigger
CREATE OR REPLACE TRIGGER student_update_trigger
AFTER UPDATE ON student
FOR EACH ROW
BEGIN
IF :OLD.name <> :NEW.name THEN
INSERT INTO student_update_info (id, old_name, new_name, update_date)
VALUES (:OLD.id, :OLD.name, :NEW.name, TO_CHAR(SYSTIMESTAMP, 'DD-MON-YYYY HH:MI:SS AM'));
END IF;
END;
/
AFTER UPDATE ON student
FOR EACH ROW
BEGIN
IF :OLD.name <> :NEW.name THEN
INSERT INTO student_update_info (id, old_name, new_name, update_date)
VALUES (:OLD.id, :OLD.name, :NEW.name, TO_CHAR(SYSTIMESTAMP, 'DD-MON-YYYY HH:MI:SS AM'));
END IF;
END;
/
-- AFTER DELETE Trigger
CREATE OR REPLACE TRIGGER after_delete_trigger
AFTER DELETE ON student
FOR EACH ROW
BEGIN
-- Code to be executed after delete
-- For example, logging the deletion
INSERT INTO student_info (log_info, time_stamp) VALUES ('Row deleted', TO_CHAR(SYSTIMESTAMP, 'DD-MON-YYYY HH:MI:SS AM'));
END;
/
AFTER DELETE ON student
FOR EACH ROW
BEGIN
-- Code to be executed after delete
-- For example, logging the deletion
INSERT INTO student_info (log_info, time_stamp) VALUES ('Row deleted', TO_CHAR(SYSTIMESTAMP, 'DD-MON-YYYY HH:MI:SS AM'));
END;
/
No comments:
Post a Comment