解决方案 »
- Oracle中的密码DBMS_OBFUSCATION_TOOLKIT.MD5加密位数的问题,在OOXX之后密码一定是16位或者32位吗?可能做成10位吗?
- 安装精简版的oracle9,登陆不上去
- oralce 如何留后门?
- SQL 当前表与历史表字段对比 两个表结构相同(在线等小弟只有20分了非常感谢)
- 数据库迁移问题
- 求一SQL
- 关于数据库性能的问题?
- oracle多条记录合并一条问题
- 请教SQL LOAD 中的“OPTIONALLY ENCLOSED BY”
- 如何在oracle8.17中加入Java程序
- 怎么与一个数组里的值比较,想知道如何用pl/sql写
- occi 与 oracle怎么处理64位数据?
定义一个sys_refcursor类型的游标变量,来传入远程过程的传出数据
过程后面要加上@DBlinkName
试试
没找到解决办法
关注下
比如,在远端库有一个过程返回字符类型的pl/sql tablecreate type t_char is table of varchar2(128) index by pls_integer;create or replace proc_in_dblink (p_records out t_char) is
begin
select mycolumn
bulk collect into p_records;
end proc_in_dblink;在本地数据库,可以用一段pl/sql读取这个变量
create type t_char is table of varchar2(128) index by pls_integer;set serveroutput on size 1000000
declare
v_records t_char;
begin
proc_in_dblink@mydblink(v_records);
for i in 1 .. v_records.count loop
dbms_output.put_line(v_records(i));
end loop;
end;
/这种写法在8i中就支持,5、6年前我大量使用过。
is
type cur is ref cursor;
mycur cur;
begin
proc_in_dblink@mydblink( mycur);
.....end procRefCursor;