有没有办法通过java访问pl / sql RECORD TYPE变量?

时间:2017-08-03 04:44:06

标签: java oracle plsql

我的存储过程中有一个动态查询。使用EXECUTE IMMEDIATE触发查询。查询结果存储在PL / SQL RECORD TYPE变量中。

我想通过java访问这个变量。现在,我将结果集置于RECORD TYPE中,然后将其转换为OBJECT TYPE,但这似乎并不合适。任何人都可以帮忙吗?任何工作都可以:提供将EXECUTE IMMEDIATE结果存储到OBJECT TYPE或访问JAVA中的RECORD TYPE变量的方法。

1 个答案:

答案 0 :(得分:0)

对于查询的第二部分,是的,我们可以将变量收集到OBJECT TYPE中。希望下面的代码段有用。

创建或替换类型lv_tab是TEST_OBJ的表   /

SET serveroutput ON;
DECLARE
  lvtab lv_tab;
BEGIN
  EXECUTE IMMEDIATE 'SELECT test_obj(LEVEL,LEVEL+1) FROM DUAL CONNECT BY LEVEL < 10' BULK COLLECT INTO lvtab;
  dbms_output.put_line(lvtab.COUNT);
END;