对触发表操作当然会报错.
create function get_jzysbm(p_ghid varchar2) --假定jzysbm是varchar2
return varchar2 -- ghid是varchar2
as
v_jzysbm varchar2(50);
begin
select jzysbm into v_jzysbm from ghxx where ghid=p_ghid;
return v_jzysbm;
end;
/
CREATE OR REPLACE TRIGGER baihemanager.GHXXSTUP
BEFORE INSERT
ON baihemanager.GHXX
REFERENCING NEW AS NEW OLD AS OLD
FOR EACH ROW
BEGIN
SELECT SEQGHXX.NEXTVAL INTO :NEW.GHID FROM dual;
update ysxx set isdn=isdn+1 where ysbm=get_jzysbm(:NEW.GHID);
END;
/
create function get_jzysbm(p_ghid varchar2) --假定jzysbm是varchar2
return varchar2 -- ghid是varchar2
as
v_jzysbm varchar2(50);
begin
select jzysbm into v_jzysbm from ghxx where ghid=p_ghid;
return v_jzysbm;
end;
/
CREATE OR REPLACE TRIGGER baihemanager.GHXXSTUP
BEFORE INSERT
ON baihemanager.GHXX
REFERENCING NEW AS NEW OLD AS OLD
FOR EACH ROW
BEGIN
SELECT SEQGHXX.NEXTVAL INTO :NEW.GHID FROM dual;
update ysxx set isdn=isdn+1 where ysbm=get_jzysbm(:NEW.GHID);
END;
/
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货