当前位置: 代码迷 >> Oracle管理 >> PLS-00103 异常! 帮忙
  详细解决方案

PLS-00103 异常! 帮忙

热度:959   发布时间:2016-04-24 04:50:43.0
求助 PLS-00103 错误!! 大虾帮忙
这是我写的一个tigger 然后一直报错
38/13 PLS-00103: Encountered the symbol "end-of-file" when expecting one of the following: ;
They symbol ";" was substituted fro "end-of-file" to continue.

求帮看看到底哪出问题了 谢谢

create or replace trigger QtyCheck1
after insert on supplyused
for each row

DECLARE
pgm_name varchar2;
pgm_qty number(4);
pgm_partid varchar2;
pgm_partqty number(4);
pgm_newqty number(4);

BEGIN

select partname,partinvqty into pgm_name,pgm_partqty
from part
where partid=:new.partid;

select SUPPLYUSEDQUANTITY,s.partid
 into pgm_qty,pgm_partid
 from supplyused s inner join part p on s.partid=p.partid
 where supplyid=:new.supplyid;

pgm_newqty:=pgm_partqty-pgm_qty;

update part
set partinvqty=pgm_newqty
where partid=pgm_partid;

if
pgm_newqty < 5 then
dbms_output.put_line('Item '||pgm_name||'        Useage: '||pgm_qty);
dbms_output.put_line('Warning: '||pgm_name||'has only'||pgm_newqty||'instock.');


else if
pgm_newqty >= 5 then
dbms_output.put_line('Item '||pgm_name||'        Useage: '||pgm_qty);
dbms_output.put_line('Numbers remaining: '||pgm_newqty);

end if;
end if;

END QtyCheck1
/

------解决方案--------------------
PLS-00103 
这个错误一般是少了分号导致的
检查一下