欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

impdp导入用户sechema ORA-39082

程序员文章站 2024-01-30 17:05:46
...

impdp导数据,出现ORA-39082 ORA-39083错误号,对象无法编译导入结束后可以通过编译对象来尝试:alter view view_name compile;如

impdp导数据,出现ORA-39082 ORA-39083错误号,对象无法编译
导入结束后可以通过编译对象来尝试:
alter view view_name compile;
如果报错:
使用show errors定位问题所在源,是权限的问题还是dblink的问题;
如果是权限问题,说明之前创建用户时没有给足够的用户权限(主要是对一些表的读权限)
主要查询以下两个视图:dba_sys_privs,dba_role_privs
如果是dblink问题,建议使用 dbms_metadata.get_ddl查看dblink定义ddl,,并尝试重建db_link

接着继续编译对象。


查看对象定义ddl:
select dbms_metadata.get_ddl('OBJECT_TYPE','OBJECT_NAME','USERNAME') from dual;


编译无效对象:
view: alter view view_name compile;
function: alter function function_name compile;


sys用户查看无效对象:
select owner,object_name,object_type,status
from dba_objects
where status !='VALID'
and owner not in ('SYS','SYSTEM')
/


show error 的用法:
编译view出现问题:
alter view view_name compile;
Warning:view view_name with compilation errors.


SQL>show errors view view_name
Errors for view view_name:


LINE/COL ERROR
----------- -------------------------
0/0 ORA---