ORACLE 存储过程报错 PLS-00103 求查错

 我来答
tta404
2018-09-23 · TA获得超过867个赞
知道答主
回答量:2
采纳率:0%
帮助的人:1550
展开全部

其中username ,counter ,rolename 是传入参数,传入参数不能赋值,即第7、8行语句有问题,建议删除。

建议在plsql工具中编辑,方便。

扩展资料

存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,存储在数据库中,经过第一次编译后再次调用不需要再次编译,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。存储过程是数据库中的一个重要对象。

参考资料

百度百科-存储过程

随o天
2012-12-15 · TA获得超过3158个赞
知道大有可为答主
回答量:1740
采纳率:71%
帮助的人:2032万
展开全部
(username varchar2,counter int,rolename varchar2) 写法,认为三个参数都 in 类型。in 类型参数是不能赋值的。例如:rolename:='connect,resource'; username:='test';写法是错误的。
写成(username in out varchar2,counter int,rolename in out varchar2)这样,允许赋值。
追问
更改之后还是不行 错误还是一样的
追答
参数(username varchar2,counter int,rolename  varchar2)不要动,
把两个赋值语句rolename:='connect,resource'; username:='test'注释掉。
用 begin my_guant_role('test',10,'connect,resource'); end;
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友e18128606
2012-12-17 · 超过15用户采纳过TA的回答
知道答主
回答量:94
采纳率:100%
帮助的人:24.7万
展开全部
1、楼上肯定找出了一个错误,入参是不能赋值的,这个肯定不正常;
2、根据报错,应该是语法格式的问题。在应该要求以下关键词时(begin function),出现了''''符号;
3、建议在plsql工具中编辑,方便。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jearay

2012-12-15 · TA获得超过1513个赞
知道大有可为答主
回答量:4761
采纳率:58%
帮助的人:402万
展开全部
楼上正解!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式