PROCEDURE P1 IS
BEGIN
DELETE FROM A1;
DELETE FROM B1;
DELETE FROM C1;
INSERT INTO A1 SELECT * FROM A;
INSERT INTO B1 SELECT * FROM B;
INSERT INTO C1 SELECT * FROM C;
INSERT INTO A2 SELECT * FROM A;
INSERT INTO B2 SELECT * FROM B;
INSERT INTO C2 SELECT * FROM C;
COMMIT;
END;
人后在job中5分钟调用一次。
或使用trigger,3个表类似的3个trigger:
create or replace trigger A_TRG
after insert or update or delete on A
for each row
begin
IF inserting THEN
insert into A1(KEY_COL,COL1,COL3)
VALUES(:NEW.KEY_COL,:NEW.col1,:NEW.col2,:NEW.col3);
insert into A2(KEY_COL,COL1,COL3)
VALUES(:NEW.KEY_COL,:NEW.col1,:NEW.col2,:NEW.col3);
elsif updating then
UPDATE A1 SET COL1=:NEW.col1,
A1.COL2=:NEW.col2,
A1.COL3=:NEW.col3)
WHERE KEY_COL=:NEW.KEY_COL,
elsif deleting then
DELETE FROM A1 WHERE KEY_COL=:NEW.KEY_COL;
END IF;
end A_TRG;
追问谢谢啦,刚才写错表了。
本回答被提问者采纳