Advertisement

JDBC使用MogDB存储过程处理ref_cursor的方法及注意事项

阅读量:

在MogDB执行存储过程的过程中,有时需要将结果集以ref_cursor类型进行返回,但在此过程中偶尔会出现错误提示。当前多数应用程序均采用Java JDBC作为连接方式。

结合近年来我们在数据库国产化转型方面的实践经验,现将通过JDBC调用MogDB存储过程并获取ref_cursor类型结果集的具体实现方式及需重点关注的事项进行说明。

创建测试用存储过程

该存储过程包含两个OUT类型的参数,其中一项用于输出结果集(sys_refcursor),其返回的行数将依据首个参数的长度进行调整,接下来对相关代码进行分析。

复制代码
    create or replace procedure test_proc_return_cursor(a varchar,mycur OUT sys_refcursor, total_rows OUT int)  
    as  
    begin  
    total_rows :=length(a);  
    open mycur for 'select substr(x,1,id),id from (select x,generate_series(1,length(x)) as id from (select :a as x))' using a;  
    end;  
      
    
    

全部评论 (0)

还没有任何评论哟~