Oracle数据库导入sql文件的时候报错

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oracle数据库导入sql文件的时候报错相关的知识,希望对你有一定的参考价值。

alter table SYS_USER enable all triggers
ORA-00942: table or view does not exist
Done.
整篇的这种错误,用户权限我已经分配过了,这是为什么呢?求解

报错是表或视图不存在.
这张表是你自己建立的还是系统自带的.我忘了系统是不是自带这张表了,如果是系统自带的,那么后面应该有s,也就是说表名应该是sys_users.如果是你自己建立的,那么就好好找找吧,应该是没建立成功吧。追问

这是我导入sql文件的时候报错的,所有的表都报这个错误,我只截图了最后一个。

这是我导入sql文件的时候报错的,所有的表都报这个错误,我只截图了最后一个。

追答

你导入的是什么?有相关的建表语句么,既然是导入的sql文件,那么就打开看一眼,看有没有先关的表,这个明显是在授权的时候,找不到表,不会没有导表过来吧。

参考技术A 在oracle服务器的命令行里sqlplus
/
as
sysdba命令可以登陆到sqlplus命令行里。
然后比如是c:/a.sql,那么就执行@c:/a.sql,然后跑完后这个a.sql就被导入进来了。

Oracle impdp 导入报错 ORA-39083 + ORA-00439

Oracle 11G R2 impdp导入的时候 一直报错:

ORA-39083: 对象类型 TABLE:"xxx"."xxx" 创建失败, 出现错误:
ORA-00439: 未启用功能: Deferred Segment Creation 

试了半天死活找不到解决办法:

# 查看数据库deferred_segment_creation状态
SQL>show parameter deferred_segment_creation; 
# 通常为true 
 
SQL>alter system set deferred_segment_creation=false scope=both;
#系统已更改

# 然后重新impdp导入(据说有人试过可以,反正我脸黑还是没效果

以上方法做个纪念,不管用

后来查看到一个原因:

  • xxx.dmp的expdp导出的源数据库是(企业版):
    Oracle Database 11g Enterprise Edition Release 11.2.0.1.0
  • 现在impdp导入的目标数据库是(标准版):
    Oracle Database 11g Standard Edition Release 11.2.0.1.0

最终的解决办法是:
把目标数据库重装成(企业版)跟源数据库一致就好了...重装大法.

以上是关于Oracle数据库导入sql文件的时候报错的主要内容,如果未能解决你的问题,请参考以下文章

imp命令导入dmp文件,提示成功无警告,但是在pl sql 查询,提示表不存在,是怎么回事?

使用PLSQL向oracle中导入dmp文件

oracle数据库导入sqlserver报错,请问是怎么回事?

Oracle impdp 导入报错 ORA-39083 + ORA-00439

Oracle 数据库 IMPDP 导入报错, ORA-39083 ORA-04052 ORA-12154 求解决方案

plsqldeveloper导入sql文件速度