环境是oracle10 SQLserver2000 通过透明网关连接。其中test1在oracle中通过透明网关创建了视图视图名为view_test1
SQLserver2000
表test1
username title
---------------------
test1 test1
test2 test2
test3 test3
test4 test4
test5 test5oracle10
表test2
nameid typess
----------------------
test1 tt1
test2 tt2
test4 tt4
test8 tt8
test9 tt9
我想要的结果用存储过程做:
oracle10
表test2
nameid typess
----------------------
test1 tt1
test2 tt2
test3 tt3
test4 tt4
test5 tt5
test8 tt8
test9 tt9
在view_test1上创建触发器游标检查新插入的数据定时执行存储过程。
SQLserver2000
表test1
username title
---------------------
test1 test1
test2 test2
test3 test3
test4 test4
test5 test5oracle10
表test2
nameid typess
----------------------
test1 tt1
test2 tt2
test4 tt4
test8 tt8
test9 tt9
我想要的结果用存储过程做:
oracle10
表test2
nameid typess
----------------------
test1 tt1
test2 tt2
test3 tt3
test4 tt4
test5 tt5
test8 tt8
test9 tt9
在view_test1上创建触发器游标检查新插入的数据定时执行存储过程。
http://www.ixdba.net/article/75/750.html
2 INSTEAD OF INSERT OR UPDATE OR DELETE ON T
3 REFERENCES OLD AS OLD NEW AS NEW
4 FOR EACH ROW
5 BEGIN
6 IF INSERTING THEN
7 INSERT INTO T2 VALUES (:NEW.ID, :NEW.NAME, :NEW.OTHERS);
8 ELSIF UPDATING THEN
9 UPDATE T2 SET ID = :NEW.ID, NAME = :NEW.NAME, OTHERS = :NEW.OTHERS
10 WHERE ID = :OLD.ID;
11 ELSIF DELETING THEN
12 DELETE T2 WHERE ID = :OLD.ID;
13 END IF;
14 END;
15 /