将数组作为参数传递给过程而不在数据库中创建varray类型

时间:2014-08-07 05:51:23

标签: oracle plsql procedure

我需要将一个数组从java传递给我的程序。我可以通过创建varray类型轻松完成,但我的问题是我没有权限创建任何对象。

有没有办法在不使用CREATE TYPE的情况下将数组作为参数传递给过程?

1 个答案:

答案 0 :(得分:0)

这取决于您需要的数组的结构。 Oracle有许多内置集合。常用的是

  • sys.dbms_debug_vc2collvarchar2(1000)的嵌套表
  • sys.odcivarchar2list-VARRAY(32767)中的varchar2(4000)
  • sys.odcinumberlist-VARRAY(32767)中的number
  • sys.odcidatelist-大胆猜测:)

数据库中已经安装了许多其他嵌套表和VArray。运行此查询以查看列表

select * from all_types
where typecode = 'COLLECTION'
/