CREATE OR REPLACE TRIGGER test_a
BEFORE INSERT OR UPDATE ON a
FOR EACH ROW
DECLARE
a_1 NUMBER;
a_2 NUMBER;
BEGIN
INSERT INTO B(BIANHAO,MINGCHENG,SHULIANG,GUIGE,DANJIA,SHIJIAN)
VALUES(CONCAT('00000',:NEW.RUKUMINGXIHAO),
:NEW.MINGCHENG,:NEW.SHULIANG,:NEW.GUIGE,:NEW.DANJIA,:NEW.SHIJIAN);
SELECT COUNT(*) INTO a_1 FROM C
WHERE C.MINGCHENG=:NEW.MINGCHENG
AND C.GUIGE=:NEW.GUIGE
AND C.DANJIA=:NEW.DANJIA;
IF a_1=0 THEN
INSERT INTO C(BIANHAO,MINGCHENG,SHULIANG,GUIGE,DANJIA)
VALUES(:NEW.RUKUMINGXIHAO,:NEW.MINGCHENG,:NEW.SHULIANG,:NEW.GUIGE,
:NEW.DANJIA);
ELSE
SELECT MAX(C.SHULIANG)+:NEW.SHULIANG INTO a_2 FROM C
WHERE C.MINGCHENG=:NEW.MINGCHENG
AND C.GUIGE=:NEW.GUIGE
AND C.DANJIA=:NEW.DANJIA;
INSERT INTO C(BIANHAO,MINGCHENG,SHULIANG,GUIGE,DANJIA)
VALUES(:NEW.RUKUMINGXIHAO,:NEW.MINGCHENG,a_2,:NEW.GUIGE,
:NEW.DANJIA);
END IF;
END test_a; --BIANHAO你自己参照
http://expert.csdn.net/Expert/topic/2529/2529063.xml?temp=.169552
创建一个自增序列,然后加入上面的INSERT语句即可。
BEFORE INSERT OR UPDATE ON a
FOR EACH ROW
DECLARE
a_1 NUMBER;
a_2 NUMBER;
BEGIN
INSERT INTO B(BIANHAO,MINGCHENG,SHULIANG,GUIGE,DANJIA,SHIJIAN)
VALUES(CONCAT('00000',:NEW.RUKUMINGXIHAO),
:NEW.MINGCHENG,:NEW.SHULIANG,:NEW.GUIGE,:NEW.DANJIA,:NEW.SHIJIAN);
SELECT COUNT(*) INTO a_1 FROM C
WHERE C.MINGCHENG=:NEW.MINGCHENG
AND C.GUIGE=:NEW.GUIGE
AND C.DANJIA=:NEW.DANJIA;
IF a_1=0 THEN
INSERT INTO C(BIANHAO,MINGCHENG,SHULIANG,GUIGE,DANJIA)
VALUES(:NEW.RUKUMINGXIHAO,:NEW.MINGCHENG,:NEW.SHULIANG,:NEW.GUIGE,
:NEW.DANJIA);
ELSE
SELECT MAX(C.SHULIANG)+:NEW.SHULIANG INTO a_2 FROM C
WHERE C.MINGCHENG=:NEW.MINGCHENG
AND C.GUIGE=:NEW.GUIGE
AND C.DANJIA=:NEW.DANJIA;
INSERT INTO C(BIANHAO,MINGCHENG,SHULIANG,GUIGE,DANJIA)
VALUES(:NEW.RUKUMINGXIHAO,:NEW.MINGCHENG,a_2,:NEW.GUIGE,
:NEW.DANJIA);
END IF;
END test_a; --BIANHAO你自己参照
http://expert.csdn.net/Expert/topic/2529/2529063.xml?temp=.169552
创建一个自增序列,然后加入上面的INSERT语句即可。
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货