一次ORA-4030问题诊断及解决(二)
2008-09-08 12:51:16 来源:WEB开发网IMP-00003: 遇到 ORACLE 错误 6550
ORA-06550: 第 1 行, 第 227 列:
PLS-00103: 出现符号 "DECLARE"在需要下列之一时:
()-+casemodnew
notnullothers
tableavgcountcurrentexistsmaxminpriorsqlstddevsum
varianceexecutemultisetthebothleadingtrailingforall
mergeyearmonthDAY_hourminutesecondtimezone_hour
timezone_minutetimezone_regiontimezone_abbrtimetimestamp
intervaldate
表本身的统计信息已经成功导入,只是处理列的统计信息时出现了错误,所以导入结束之后,进行检查的时候,发现表的统计信息已经成功导入,因此并没有发现其他的异常。
这个现象正好可以说明为什么同样的问题在源数据库没有发生,而在目标数据库却发生了。
不过根据错误信息显示,当前在处理统计信息的列是GROUP_PROJECT_ID,而不是ENABLE_FLAG。这其实并没有关系,只要源数据库中的列的统计信息与当前数据库中的不一致,就可以说明问题了,因为导入的时候很可能由于中途出现错误,而使得随后的一些统计信息的处理没有完成。
下面检查源数据库和目标数据库的统计信息是否有差异:
SQL>SELECT*FROMGLOBAL_NAME;
GLOBAL_NAME
---------------------------------------------------------------------------------
BJTEST
SQL>SELECTCOLUMN_NAME,NUM_DISTINCT,NUM_NULLS,DENSITY,NUM_BUCKETS
2FROMUSER_TAB_COLUMNS
3WHERETABLE_NAME='ORD_HIT_COMM'
4ANDCOLUMN_NAME='ENABLE_FLAG';
COLUMN_NAMENUM_DISTINCTNUM_NULLSDENSITYNUM_BUCKETS
-------------------------------------------------------
ENABLE_FLAG202.9971E-071
SQL>SELECT*FROMUSER_TAB_HISTOGRAMS
2WHERETABLE_NAME='ORD_HIT_COMM'
3ANDCOLUMN_NAME='ENABLE_FLAG';
TABLE_NAMECOLUMN_NAMEENDPOINT_NUMBERENDPOINT_VALUEENDPOINT_ACTUAL_VALUE
----------------------------------------------------------------------------
ORD_HIT_COMMENABLE_FLAG02.4988E+35
ORD_HIT_COMMENABLE_FLAG12.5507E+35
- ››oracle 中 UPDATE nowait 的使用方法
- ››Oracle ORA-12560解决方法
- ››Oracle 10g RAC 常用维护命令
- ››Oracle如何在ASM中定位文件的分布
- ››Oracle的DBMS_RANDOM.STRING 的用法
- ››oracle 外部表导入时间日期类型数据,多字段导入
- ››Oracle中查找重复记录
- ››oracle修改用户登录密码
- ››Oracle创建删除用户、角色、表空间、导入导出等命...
- ››Oracle中登陆时报ORA-28000: the account is lock...
- ››Oracle数据库在配置文件中更改最大连接数
- ››Oracle中在pl/sql developer修改表的两种方式
更多精彩
赞助商链接