[Oracle数据库] 存储过程出错 :PLS-00103: 出现符号 ""在需要下列之一时: := . ) , @...

写存储过程的第一天脑子比较迷糊,总是错误百出(以下为本人在实验过程中所遇到的错误,如有不妥之处,望指正)。

存储过程代码(正确):

create or replace procedure p_借书(
p_借阅流水号 in Leadinformation.Leadid%TYPE,
p_借书证号 in Leadinformation.Readerid%TYPE,
p_图书编号 in Leadinformation.Bookid%TYPE
)
as
Begin
  insert into Leadinformation
         values(p_借阅流水号,p_借书证号,p_图书编号,SYSDATE,'','','');
  update Book set Book.Isout='是' where Book.Bookid=p_图书编号;
  dbms_output.put_line('操作成功');
  commit;
  return;
END;

call p_借书(8,'20051001','2001231');

调用存储过程报错:若是在调用存储过程的时候报这个错误一般是存储过程写的有问题,可以在看看存储过程是否有编译成功

创建存储过程报错:错误的原因就比较多了,如果是在参数部分报错,就注意看看是否是在类型后面加了长度如varchar2(10),如果没有就看看参数之间的分隔符“,”是否有,如果在PL/SQL块内报错,就看看参数及参数类型是否一一对应,尤其注意日期的类型是否对应

你可能感兴趣的:(Oracle,数据库)