Triggers
Triggers
BEGIN
INSERT INTO DEPT VALUES (10, 'HR', 'USA');
INSERT INTO DEPT VALUES (20, 'SALES', 'UK');
INSERT INTO DEPT VALUES (30, 'FINANCIAL', 'JAPAN');
COMMIT;
END;
/
BEGIN
INSERT INTO EMP VALUES (1000, 'XXX5', 15000, 'AAA', 30);
INSERT INTO EMP VALUES (1001, 'YYY5', 18000, 'AAA', 20);
INSERT INTO EMP VALUES (1002, 'ZZZ5', 20000, 'AAA', 10);
COMMIT;
END;
/
BEGIN
UPDATE guru99_emp_view SET location = 'FRANCE' WHERE employee_name = :'XXX';
COMMIT;
END;
/
CREATE TRIGGER guru99_view_modify_trg
INSTEAD OF UPDATE
ON guru99_emp_view
FOR EACH ROW
BEGIN
UPDATE dept
SET location=:new.location
WHERE dept_name=:old.dept_name;
END;
/
BEGIN
UPDATE guru99_emp_view SET location='FRANCE' WHERE employee_name='XXX5';
COMMIT;
END;
/
BEGIN
INSERT INTO EMP VALUES (1004,'CCC', 15000, 'AAA', 30);
COMMIT;
END;
/
BEGIN
INSERT INTO EMP VALUES (1006,'ABC', 15000, 'AAA', 30);
COMMIT;
END;
/
------------------------------------------------------------
StudyTonight method:
Triggers in oracle are blocks of PL/SQL code which oracle engine can execute
automatically based on some action or event.
INSERT INTO testing VALUES (15, 'Roger Milk', 'Khi', 17, 16000, 'Internee',
'testii');
INSERT into testing VALUES(16, 'Saina', 'Lahore', 17, 17500, 'HR intern', 'HR');
INSERT into testing VALUES(16, 'Aisha', 'Lahore', 20, 18000, 'HR intern', 'HR');