在oracles嵌套表中的最大行数是多少 [英] What is maximum rows count in oracles nested table

查看:145
本文介绍了在oracles嵌套表中的最大行数是多少的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

  CREATE TYPE nums_list AS TABLE OF NUMBER; 

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



UPDATE

  CREATE TYPE nums_list AS号码; 

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;

结束;


SELECT count(*)FROM TABLE(generate_series(1,4555555));

这会产生错误: ORA-22813操作数值超过系统限制,Object集合值太大

嵌套表格的下标范围为1..2 31 ,因此您可以拥有2 集合中的31个元素。这个限制自从至少8.1.6以来没有改变,当然,它可能在未来改变。


CREATE TYPE nums_list AS TABLE OF NUMBER;

What is maximum possible rows count in oracle's nested table ?

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) );

This gives error: ORA-22813 operand value exceeds system limits, Object or Collection value was too large

解决方案

The range of subscripts for a nested table is 1..231 so you can have 231 elements in the collection. That limit hasn't changed since at least 8.1.6 though, of course, it might change in the future.

这篇关于在oracles嵌套表中的最大行数是多少的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆