有两个表:table1和table2, 其中table1有两个属性attr_ver和attr_av
table2有三个属性attr1,attr2,attr3;
现在创建一个table3,属性和table2一样,问题:创建一个触发器,当table1中的属性更改时,把table2中对应的属性值存到table3中;
要怎么弄啊?初学,请教;
table2有三个属性attr1,attr2,attr3;
现在创建一个table3,属性和table2一样,问题:创建一个触发器,当table1中的属性更改时,把table2中对应的属性值存到table3中;
要怎么弄啊?初学,请教;
(
ID NUMBER(4),
attr_ver VARCHAR2(20),
attr_av VARCHAR2(20)
);CREATE TABLE table2
(
ID NUMBER(4),
attr1 VARCHAR2(20),
attr2 VARCHAR2(20),
attr3 VARCHAR2(20)
);CREATE TABLE table3
(
ID NUMBER(4),
attr1 VARCHAR2(20),
attr2 VARCHAR2(20),
attr3 VARCHAR2(20)
);
编译成功的触发器:CREATE OR REPLACE TRIGGER tr_personalarchives
AFTER UPDATE OR DELETE ON T_ARCHIVES
FOR EACH ROW
DECLARE
PRAGMA autonomous_transaction;
vArchiveName T_ARCHIVES.archivesname%TYPE;
BEGIN
IF updating THEN
SELECT archivesname FROM t_archives WHERE archivesid = :new.archivesid;
UPDATE T_PERSONALARCHIVES set archivesname = vArchiveName;
where archivesid = :new.archivesid;
END IF;
END;