sql>conn system/*****
sql>create directory my_dir as 'E:\dbfile';
sql>grant read,write on directory my_dir to lee,scott;
=======================================================
sql>conn scott/******当执行如下命令时,却出现了错误提示
expdp scott/***** directory=my_dir dumpfile=mydump.dmp content=data_only tables=paitent错误提示如下:
处理对象类型TABLE_EXPORT/TABLE/TABLE_DATA
使用BLOCKS方法估计:0KB
ORA-39166:找不到对象patient;
ORA-31655:尚为作业选择数据或元数据对象
作业"SCOTT"."SYS_EXPORT_TABLE_01"已经完成,但是有2个错误(于10:18:42完成)请问各位哥,对象patient是用户scott的一个表,为什么会出现这种错误,小弟应该怎样处理。多谢。

解决方案 »

  1.   

    提示信息,scott用户下面应该没得patient表。
    LZ最好先确认这张表是不是在SCOTT用户下,还是在其他用户。
    SELECT * FROM ALL_tables WHERE table_name='PAITENT';
      

  2.   

    小弟用的是ORACLE 11G,经检查得在用户scott下确定有表patient。上述'PAITENT'是小弟在发贴时写错,但问题还是这样,系统还是报这个错。请指教。
      

  3.   

    如果你指令没错的话,那导出的表明拼错了吧
    expdp scott/***** directory=my_dir dumpfile=mydump.dmp content=data_only tables=paitent
      

  4.   

    如果排除你拼写错误(修正后),还是提示表不存在的话,LZ用以下指令是否可以查到资料。
    SELECT * FROM ALL_tables WHERE table_name='PATIENT';
      

  5.   

    小德哥,你好啊!我使用了你给的那条查询语句:SELECT * FROM ALL_tables WHERE table_name='PATIENT';确实可以查询出相关的信息。