oracles嵌套表中的最大行数是多少

OTA*_*TAR 3 sql database oracle nested-table oracle12c

CREATE TYPE nums_list AS TABLE OF NUMBER;
Run Code Online (Sandbox Code Playgroud)

oracle的嵌套表中可能的最大行数是多少?

UPDATE

CREATE TYPE nums_list  AS TABLE OF NUMBER;

CREATE OR REPLACE  FUNCTION  generate_series(from_n NUMBER, to_n NUMBER)
RETURN nums_list AS
ret_table nums_list := nums_list();
BEGIN

  FOR i IN from_n..to_n LOOP
    ret_table.EXTEND;
    ret_table(i) := i;
  END LOOP;
  RETURN ret_table;

END;


SELECT count(*)   FROM TABLE ( generate_series(1,4555555) );
Run Code Online (Sandbox Code Playgroud)

这给出了错误: ORA-22813 operand value exceeds system limits, Object or Collection value was too large

Jus*_*ave 6

下标为嵌套表的范围为1..2 31所以可以有2个集合中的31个元素.这个限制至少从8.1.6没有变化,当然,它可能会在未来发生变化.

  • @OTARIKI - 在此上下文中`**`表示与`^`相同,即限制为2的幂为31减去1,即2147483647.后面的文档(如链接到OracleUser)显示实际数字,可能是为了避免这种混乱...... (2认同)