Oracle存储过程怎么返回结果?
以下是我的存储过程:createorreplaceprocedureselect_proissyn_sqlvarchar2(200)default'';beginsyn_...
以下是我的存储过程:
create or replace procedure select_pro is
syn_sql varchar2(200) default '';
begin
syn_sql := 'select * from emp';
execute immediate syn_sql;
end select_pro;
要求:在命令行中或者在PL/SQL Developer中能看到我要的结果,而非Java中。 展开
create or replace procedure select_pro is
syn_sql varchar2(200) default '';
begin
syn_sql := 'select * from emp';
execute immediate syn_sql;
end select_pro;
要求:在命令行中或者在PL/SQL Developer中能看到我要的结果,而非Java中。 展开
4个回答
展开全部
这个存储过程你可以在TEST的环境下查看结果,不过你需要隐式游标来进行操作,那样才能看到,具体步骤如下:
1、首先我们要借助游标,因此需要先定义一个返回类型的游标
create or replace package type_difinition
as
type mycursor is ref cursor;
end type_difinition;
2、改写你的存储过程,要想查看执行SQL后结果需要一个返回参数,这个参数即上面定义的游标
类型
create or replace procedure select_pro(
p_result out type_difinition.mycursor -- 返回结果
)
is
syn_sql varchar2(200) default '';
begin
syn_sql := 'select * from emp';
-- 此处打开游标,并把需执行的SQL赋值给游标
open p_result for syn_sql;
end select_pro;
3、执行编译通过后,右键点击存储过程的名字,跳出框,选择Test一项,进入Test界面
4、点击编译、再点击执行
5、Test界面的底部界面,有个Variable Type value的列表,此时你可以点击Value值里面的
... 按钮,即可查看结果,由于不怎么会应用这个编辑器,本想把图片上传给你,如有不解,再详问,希望回答对楼主有帮助
1、首先我们要借助游标,因此需要先定义一个返回类型的游标
create or replace package type_difinition
as
type mycursor is ref cursor;
end type_difinition;
2、改写你的存储过程,要想查看执行SQL后结果需要一个返回参数,这个参数即上面定义的游标
类型
create or replace procedure select_pro(
p_result out type_difinition.mycursor -- 返回结果
)
is
syn_sql varchar2(200) default '';
begin
syn_sql := 'select * from emp';
-- 此处打开游标,并把需执行的SQL赋值给游标
open p_result for syn_sql;
end select_pro;
3、执行编译通过后,右键点击存储过程的名字,跳出框,选择Test一项,进入Test界面
4、点击编译、再点击执行
5、Test界面的底部界面,有个Variable Type value的列表,此时你可以点击Value值里面的
... 按钮,即可查看结果,由于不怎么会应用这个编辑器,本想把图片上传给你,如有不解,再详问,希望回答对楼主有帮助
展开全部
按照LZ的意思应该是用dmbs_output.put_line()
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用 dmbs_output.put_line()
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
要设置显示;
set serveroutput on
输入上面的命令就可以了!
set serveroutput on
输入上面的命令就可以了!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询