一、在数据库A中:
1、有过程PA:
create or replace procedure PA(cur_a out sys_refcursor) is
begin
...
open cur_a for select * from table_a;
end PA;
二、数据库B中:
1、建有到A的DB LINK链接(名为btoalink)
2、建有调用PA的过程PB:
create or replace procedure PB is
cur_b sys_refcursor;
row_b table_b%rowtype; --table_b与table_a的表结构相同
begin
PA(cur_b)@btoalink;
loop
fetch cur_b into row_b; --此处出错:无效的游标
exit when cur_b%notfound;
dbms_output.put_line(row_b.id);
end loop;
close cur_b;
end PB;
问题:执行PB时报错“无效的游标”。
1、为何出错?
2、如何解决?
3、最好能给出远程游标的运行机制?
1、有过程PA:
create or replace procedure PA(cur_a out sys_refcursor) is
begin
...
open cur_a for select * from table_a;
end PA;
二、数据库B中:
1、建有到A的DB LINK链接(名为btoalink)
2、建有调用PA的过程PB:
create or replace procedure PB is
cur_b sys_refcursor;
row_b table_b%rowtype; --table_b与table_a的表结构相同
begin
PA(cur_b)@btoalink;
loop
fetch cur_b into row_b; --此处出错:无效的游标
exit when cur_b%notfound;
dbms_output.put_line(row_b.id);
end loop;
close cur_b;
end PB;
问题:执行PB时报错“无效的游标”。
1、为何出错?
2、如何解决?
3、最好能给出远程游标的运行机制?
解决方案 »
- oracle教程
- oracle 的dump_cvs过程导出数据到cvs报错,谢谢!
- UPDATE 循环问题
- 请教存储过程中begin/end的问题
- 只提供ip地址和端口,用户,密码,连接到oracle
- 如何用SQL语句做这种差值啊?
- select语句中含有中文怎么办?? 救急呀!!问题解决了可以再加分!
- 怎么把指定目录中的指定文件放入lob字段?
- 请问NVARCHAR2 与VARCHAR2有什么区别?? 为何用了NVARCHAR2字段时,插入数据报字符集不对的错?
- SQLdeveloper连接数据库时出现错误
- 触发器能不能实现这个功能?
- ip地址改动后,怎样启动dbconsole,有什么好办法,试了几个方法都不行。100分急求。
·You cannot use RPCs (Remote Procedure Calls) to pass cursor variables from one server to another.