Mega Code Archive

 
Categories / Oracle PLSQL Tutorial / Trigger
 

Logging INSERT Operations With WHEN Conditions

SQL> SQL> CREATE TABLE myTable (Name VARCHAR(50) PRIMARY KEY NOT NULL,   2                       PhoneNo VARCHAR(15)); Table created. SQL> SQL> CREATE TABLE myTableAudit   2  (id INT PRIMARY KEY NOT NULL,   3   Operation VARCHAR(10),   4   RecordedOn DATE DEFAULT SysDate,   5   OldName VARCHAR(50),   6   NewName VARCHAR(50),   7   OldPhone VARCHAR(15),   8   NewPhone VARCHAR(15)); Table created. SQL> SQL> CREATE OR REPLACE TRIGGER myTableAuditTrigger   2  AFTER INSERT ON myTable   3  FOR EACH ROW   4  WHEN (NEW.Name='Peter')   5  BEGIN   6    INSERT INTO myTableAudit (id, Operation, NewName, NewPhone)   7    VALUES (1, 'Insert ', :NEW.Name, :NEW.PhoneNo);   8  END;   9  / Trigger created. SQL> SQL> show errors No errors. SQL> SQL> drop table myTable; Table dropped. SQL> SQL> drop table myTableAudit; Table dropped.