|
- 精华贴数
- 15
- 专家积分
- 740
- 技术积分
- 63484
- 社区积分
- 1691
- 注册时间
- 2003-2-24
- 论坛徽章:
- 65
|
[Q]执行execute dbms_logmnr.start_logmnr(DictFileName=>'DictFileName')提示ORA-01843:无效的月份,这个是什么原因 [A]我们分析start_logmnr包 PROCEDURE start_logmnr( startScn IN NUMBER default 0 , endScn IN NUMBER default 0, startTime IN DATE default TO_DATE('01-jan-1988','DD-MON-YYYY'), endTime IN DATE default TO_DATE('01-jan-2988','DD-MON-YYYY'), DictFileName IN VARCHAR2 default '', Options IN BINARY_INTEGER default 0 ); 可以知道,如果TO_DATE('01-jan-1988','DD-MON-YYYY')失败,将导致以上错误 所以解决办法可以为 1、Alter session set NLS_LANGUAGE=American 2、用类似如下的方法执行 execute dbms_logmnr.start_logmnr (DictFileName=> 'f:\temp2\TESTDICT.ora', starttime => TO_DATE( '01-01-1988','DD-MM-YYYY'), endTime=>TO_DATE('01-01-2988','DD-MM-YYYY')); |
|