ORA-39083: Object type TABLE:"ZKM"."TEST" failed to create with error:
ORA-00904: "SYS_STUF3GLKIOP5F4B0BTTCFTMX0W": invalid identifier
情况:
xx银行expdp(11g——19c),导入报错。
扩展统计信息概念(extension statistics)
处理:
可忽略,直接事后在19c环境上面建扩展统计信息即可。
1.查看
col column_name for a50
col DATA_DEFAULT for a50
set line 500
select COLUMN_NAME,DATA_DEFAULT,VIRTUAL_COLUMN,HIDDEN_COLUMN from dba_tab_cols where owner='ZKM' and table_name='TEST';
2.建
SELECT DBMS_STATS.CREATE_EXTENDED_STATS(OWNNAME => 'ZKM',TABNAME => 'TEST',EXTENSION => '(c1,c2)') FROM DUAL;
模拟:
11g环境——————
建用户、权限
create user zkm identified by oracle;
grant dba to zkm;
建表
CREATE TABLE zkm.test
(
c1 NUMBER(6),
c2 NUMBER(8,2),
c3 NUMBER(8,2)
);
看ddl(不用)
select dbms_metadata.get_ddl('TABLE','TEST','ZKM') from dual;
建函数索引和普通索引(比对)
create index zkm.test on zkm.test(NVL(c3,0));
create index zkm.haha on zkm.test(c3);
查看列
col column_name for a50
col DATA_DEFAULT for a50
set line 500
select COLUMN_NAME,DATA_DEFAULT,VIRTUAL_COLUMN,HIDDEN_COLUMN from dba_tab_cols where owner='ZKM' and table_name='TEST';
建函数索引,会出来一个虚拟列(SYS_NC00004$),普通索引不会。
建扩展统计信息
SELECT DBMS_STATS.CREATE_EXTENDED_STATS(OWNNAME => 'ZKM',TABNAME => 'TEST',EXTENSION => '(c1,c2)') FROM DUAL;
查看列(多出扩展统计信息的列)
select COLUMN_NAME,DATA_DEFAULT,VIRTUAL_COLUMN,HIDDEN_COLUMN from dba_tab_cols where owner='ZKM' and table_name='TEST';
导入不一定报错,但是确实扩展统计信息是没的