使用关联数组时是否可以使用SELECT FROM?我通过.NET应用程序将数组传递给存储过程,并且我希望能够在从另一个表中进行选择时将该数组用作条件.假设我正在向程序传递一系列ID,我希望能够这样做:
select * from table1 where userID in (select column_value from array)
数组的类型在包中定义:
type id_array is type of number index by pls_integer
我试图找出PL / SQL中VARRAY 的可能上限。
我们肯定可以将VARRAY类型定义为
TYPE type_name IS {VARRAY | VARYING ARRAY} (size_limit)
OF element_type [NOT NULL];
Run Code Online (Sandbox Code Playgroud)
Oracle文档中这样说:
每个varray都存储为单个对象,可以在其表的内部是一列(如果varray小于4KB),也可以在表的外部,但仍存储在同一表空间中(如果varray大于4KB)。您必须同时更新或检索varray的所有元素,这在一次对所有元素执行某些操作时最合适。但是您可能会发现以这种方式存储和检索大量元素是不切实际的。
但是size_limit参数的上限是多少?它等于无符号整数(4,294,967,295)吗?