最近我人品比较差。什么代码都出bug各位神人帮帮忙。。
有以下表及字段
A_t:a_id
B_t:b_id
c_t:a_id,b_id
现要写一个触发器,当我对B_t进行插入时,如何将C_t中对应的a_id插入A_t?
谢谢各位~~~~
有以下表及字段
A_t:a_id
B_t:b_id
c_t:a_id,b_id
现要写一个触发器,当我对B_t进行插入时,如何将C_t中对应的a_id插入A_t?
谢谢各位~~~~
before insert on B_t
begin
select a_id into :new.b_id from A_t;
end;
对的create or replace trigger groupToUser
after insert on B_t
for each row
declare
DID NUMBER(8);
cursor cur_offer is SELECT userid FROM C_t WHERE C_t.b_id = :NEW.b_id;BEGIN
open cur_offer;
loop
fetch cur_offer into DID;
INSERT INTO A_t(a_id) VALUES(DID);
end loop;
close cur_offer;
commit;
end groupToUser;
这是我写的触发器但是一执行就死机
after insert
on b_t
REFERENCING OLD AS OLD NEW AS NEW
for each row
declare
begin
insert into a_t select c.a_id from c_t c where c.b_id = :new.b_id;
end;
AFTER INSERT ON B_T
FOR EACH ROW
BEGIN
INSERT INTO A_T
SELECT A_ID FROM C_T WHERE B_ID = :NEW.B_ID;
COMMIT;
END;
insert into table1 (col1,col2...) select col1,col2... from table2
AFTER INSERT
ON c_t
REFERENCING NEW AS new_value
BEGIN
INSERT INTO a_t VALUES(SELECT a_id FROM c_t WHERE b_id=:new_value.b_id);
COMMIT;
END;
AFTER INSERT ON b_t
for each ROW
declare
DID NUMBER(8);
cursor cur_offer is SELECT a_id FROM c_t WHERE b_id=:NEW.b_id;
BEGIN
open cur_offer;
LOOP
fetch cur_offer into DID;
exit when cur_offer%notfound;
INSERT INTO A_t(a_id) VALUES(DID);
end loop;
close cur_offer;
END tri_b_t;
/
这个才是我想要的我做了两个晚上总算出了啦谢谢大家给我的思路~~~~