是817吗?
这是由于dbms_logmnr_d.build包有bug造成的,可以试试下面的办法:
编辑"rdbms\admin\dbmslmd.sql"文件,把其中的
TYPE col_desc_array IS VARRAY(513) OF col_description;
改成:
TYPE col_desc_array IS VARRAY(700) OF col_description;
注意,原文件中可能也不是513,甚至更小
保存文件,然后执行一遍这个脚本:
SQL> @c:\oracle\ora81\rdbms\admin\dbmslmd.sql
然后重新编译DBMS_LOGMNR_D包:
SQL> alter package DBMS_LOGMNR_D compile body;
Package body altered.
之后重新执行dbms_logmnr_d.build即可:
检查NLS_DATE_FORMAT设置,并参考START_LOGMNR的语法:
DBMS_LOGMNR.START_LOGMNR(
startScn IN NUMBER default 0,
endScn
IN NUMBER default 0,
startTime
IN DATE default '01-jan-1988',
endTime
IN DATE default '01-jan-2988',
DictFileName IN VARCHAR2 default '',
Options
IN BINARY_INTEGER default 0 );
alter session set nls_date_format = dd-mon-yyyy已经修改过了,为什么还是显示execute dbms_logmnr.start_logmnr(dictfilename=>'d:\oracle\admin\orcl\LogMi
er\orcldict.ora');
BEGIN dbms_logmnr.start_logmnr(dictfilename=>'d:\oracle\admin\orcl\LogMiner\orc
dict.ora'); END;
Change NLS_LANGUAGE variable to AMERICAN within the current session before running DBMS_LOGMNR.START_LOGMNR:
SQL> alter session set NLS_LANGUAGE=american;