create or replace trigger up_test
after insert on a
for each row
begin
update a set f1=(select f1 from b);
end;
/

解决方案 »

  1.   

    SQL> create table t1(a int,b int);表已创建。SQL> create table t2(a int,b int);表已创建。SQL>
    SQL> insert into t2 values (1,1);已创建 1 行。SQL> insert into t2 values (2,4);已创建 1 行。SQL> insert into t2 values (3,9);已创建 1 行。SQL> insert into t2 values (4,16);已创建 1 行。SQL>
    SQL> create or replace trigger test
      2  before insert on t1
      3  for each row
      4  begin
      5    select b into :new.b from t2 where a=:new.a;
      6  end;
      7  /触发器已创建SQL> insert into t1(a) values (1);已创建 1 行。SQL> select * from t1;         A          B
    ---------- ----------
             1          1SQL> insert into t1(a) values (2);已创建 1 行。SQL> insert into t1(a) values (3);已创建 1 行。SQL> select * from t1;         A          B
    ---------- ----------
             1          1
             2          4
             3          9
      

  2.   

    从b数据表中查找的列f1的数据,并更新到a数据表的相应列f1
    要有a,b间的对应关系