用PLSQL DEVELOPER8编写存储过程的困惑,求大家帮忙。

sd8023580 2013-02-04 06:32:23
使用的是ORACLE11G,工具为plsql developer8.0,写存储过程很不顺啊。第一,我不知道是什么原因,写完存储过程,编译,说是不认declare关键,一定要使用create proc XXXX is,哪位知道怎么进行设置,能够让它支持DECLARE写法,真心很不习惯IS啊。
第二,在存储过程里不能使用替代变量,我不知道是什么原因。我试过写个简单的SQL: select id from table1 where name = &name; 执行后,会让我提示输入name,但是在存储过程里,我即使做成成员变量赋值,如:v_qty := &sv_qty;,编译会报错,报在"&"这个上面。
我实在是万分纠结,不是学不会存储过程,这工具实在是个坎,恳请大家给点建议,我该怎么完善自己的环境。
...全文
1137 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
sd8023580 2013-02-06
  • 打赏
  • 举报
回复
可以写SQL,返回方式一种是用游标。另一种是加into写到声明的变量里去。后面一种,最好捕获TOO_MANY_ROWS异常
lovezxb0312 2013-02-06
  • 打赏
  • 举报
回复
1.语法就这样 2.存储过程中不能写SQL的,如果要返回结果集,请要游标变量 open local_cursor for your sql; 像这样: create or replace procedure test(local_cursor out sys_refcursor )is vv_failcode varchar(30); begin vv_failcode:='1'; open local_cursor for select * from failcode_test where failcode=vv_failcode; end test;
sd8023580 2013-02-04
  • 打赏
  • 举报
回复
自己顶自己一下,没人吗这里

17,088

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧