文档解释
ORA-26813: The value for argument “ARRAY_SIZE” is too small
Cause: The value for argument “ARRAY_SIZE” was less than the number of columns in the requested column list.
Action: Check the return value for “NUM_COLUMNS” parameter then allocate all input arrays to at least that size and invoke the same OCI function again.
ORA-26813: ARRAY_SIZE 参数的值太小。
官方解释
当SQL*Loader尝试用设置的array_size值访问某数据库表时,如果array_size设置的值小于表报告的一页大小,该错误就会发生。
常见案例
ORA-26813错误在SQL*Loader尝试使用较小的array_size值访问数据库表时发生。
一般处理方法及步骤
1.确定array_size当前设置值:
SQL> show parameter array_size
2.确定array_size建议值:
SQL> SELECT a.tablespace_name,b.block_size FROM dba_tablespaces a
INNER JOIN dba_data_files b
ON a.tablespace_name=b.tablespace_name ;
3.建议将array_size设置为小于等于表上报的页面大小:
SQL> alter system set array_size=375M SCOPE=SPFILE;
4.最终确定array_size值,确保正确运行:
SQL> show parameter array_size