当前位置:首页 » 存储配置 » 存储过程在执行时返回游标状态

存储过程在执行时返回游标状态

发布时间: 2022-03-02 19:21:49

㈠ oracle 存储过程执行动态sql 返回结果给游标,外部程序获得dataset结果集。

你这样写就可以了,ORACLE存储过程不需要返回值,只要参数是out就代表为输出参数了,你给它传一个游标进去,执行完,这个游标的值就是你查询的值了。

㈡ 关于存储过程返回游标的处理

对游标进行遍历,获得游标中的数据,存放到结果集中,
呵呵,希望能有帮助,^_^

㈢ 求助:在oracle中用存储过程返回游标(前先判断游标是否有值)的问题

可以绕个弯...
先可以用select
count(*)
查询你游标的结果集,判断一下如果大于0
则说明有值,如果等于0就没有值,有值就继续执行打开游标,没有值的话就返回
DBMS_OUTPUT.PUT_LINE('没有返回值');

㈣ 关于存储过程返回游标的错误

光有包头,没有包体,包里面有个游标,但是游戏只是声明了一个类型,也有在包体里面实现这个游标,在FILTER_DATA_PROCEDURE这个过程里面打开了游标,也没有关闭.建议你去学习了包的写法,游标的使用方法在来好好看看你自己写的

㈤ 如何在oracle存储过程中返回游标

1:首先你需要创建一个包,并定义你返回的游标的类型、存储过程 create or replace package TEST_PKG is -- Public type declarations type cur_emp is REF CURSOR; procere test_proc (v_empno in number, emps out cur_emp); end TEST_PKG; 2:然后你再创建包体 create or replace package body TEST_PKG is procere test_proc (v_empno in number, emps out cur_emp)asbeginopen emps for select * from emp where empno=7369; end test_proc; end TEST_PKG ; 3,通过java调用 cstmt = conn.prepareCall("{call TEST_PKG .test_proc (?)}"); cstmt.registerOutParameter(1, OracleTypes.CURSOR); cstmt.execute();//获得结果集

㈥ 存储过程以游标方式返回结果集,在应用程序中怎么关闭

关闭数据库连接即可。
因为数据库连接一旦显式关闭,那么这个连接进程会在服务器端也进行强制挂起,并进入关闭的队列,等待关闭。
--------------------------------
疑问,写了这么多年的存储过程了,还第一次见到存储过程是返回游标形式的。最好还是从你的业务入手修改程序吧。

㈦ 在存储过程里怎么返回动态SQL执行得到的游标

糟糕的编码方法,无论DB是否支持。--事实上也的确不支持

sp应该成为一个黑盒子,供调用。

㈧ Pl/sql存储过程中 游标返回值问题

看到你刚才的问题了,看看我的回答,
补充:刚测了下,如果创建的是临时表,用create as select * from xxx,是没有数据的
创建后再执行一次插入
DECLARE
psqlstr VARCHAR2(200);
stmp VARCHAR2(200);
tname VARCHAR2(30);
BEGIN

tname := 'temp_s1'; -- 临时表名
stmp := 'select * from t1 where 1=1'; -- t1为源表,stmp为从源表查询数据的sql
psqlstr := 'create global temporary table '||tname||' as '||stmp;
EXECUTE IMMEDIATE psqlstr; -- 创建成功,但是临时表中无数据
psqlstr := 'insert into t1_temp '||stmp; -- 再插入一次数据
EXECUTE IMMEDIATE psqlstr;
END;

㈨ mysql存储过程中能返回游标吗

MySQL中可以返回一个记录集 , 比如直接 select * from test_table; ,你在程序中直接调这个存储过程,存储过程会返回这些记录集到你的客户端应用程序中。
但无法返回游标。

㈩ 存储过程中输出参数为游标的时候怎么处理

你的意思是不是要获取到“当前用户:user_id”这个的内容,如果是,两个方式可以解决:
1.通过存储过程的出参,将“当前用户:user_id”连接串返回;
比如:
假设你的过程叫,prc_test,在参数列表中增加出参。
create or replace procere prc_test(入参 in 类型, 出参 out 类型) is
begin
-- 逻辑实现
end;
出参就是你要把内容放进去,用来传值的变量。
2.在过程中保存一张临时表,然后在java中查出这个临时表中保存的数据。
定义临时表table_temp
在过程中
insert into table_temp(msg) values ('当前用户:' || user_id);

热点内容
滑板鞋脚本视频 发布:2025-02-02 09:48:54 浏览:431
群晖怎么玩安卓模拟器 发布:2025-02-02 09:45:23 浏览:557
三星安卓12彩蛋怎么玩 发布:2025-02-02 09:44:39 浏览:743
电脑显示连接服务器错误 发布:2025-02-02 09:24:10 浏览:536
瑞芯微开发板编译 发布:2025-02-02 09:22:54 浏览:146
linux虚拟机用gcc编译时显示错误 发布:2025-02-02 09:14:01 浏览:232
java驼峰 发布:2025-02-02 09:13:26 浏览:651
魔兽脚本怎么用 发布:2025-02-02 09:10:28 浏览:532
linuxadobe 发布:2025-02-02 09:09:43 浏览:212
sql2000数据库连接 发布:2025-02-02 09:09:43 浏览:726