首先声明,经多方考证和本人的验证,ORACLE中执行触发器时,是可以修改本表的数据库的,等会具体讲。
触发器的语法就不讲了,如果需要,这边有个ORACLE语法教程下载,
首先见表
CREATE TABLE test
(
ID VARCHAR2(30),
VALUE VARCHAR2(30)
);
INSERT INTO test VALUES('0001','WANG');
INSERT INTO test VALUES('0002','DONG');
SELECT * FROM test;
-------------------------------
ID VALUE
0001 WANG
0002 DONG
CREATE OR REPLACE TRIGGER TG_TEST
AFTER INSERT ON test
FOR EACH ROW
DECLARE
PARGMA AUTONOMOUS_TRANSACTION;//声明自治事务,如果没有这个自治声明,是不能修改本表数据的,(关键)
BEGIN
UPDATE test SET VALUE=:NEW.VALUE WHERE ID='0001';
COMMIT;