Microsoft Windows XP [版本 5.1.2600](C) 版权所有 1985-2001 Microsoft Corp.
C:\Documents and Settings\Administrator>imp AAA/aaa@TEST fromuser=AAA touser=AAA file=I:\111\AAA4.dmp commit=y feedback=10000 buffer=3800000 ignore=y rows=y in
dexes=n constraints=n tables=(a_emp:DA2012_1) 
Import: Release 10.2.0.1.0 - Production on 星期 09月 11 07:03:03 2012
Copyright (c) 1982, 2005, Oracle.  All rights reserved.
连接到: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options 
经由常规路径由 EXPORT:V09.02.00 创建的导出文件
已经完成 ZHS16GBK 字符集和 AL16UTF16 NCHAR 字符集中的导入
. 正在将 AAA 的对象导入到 AAA
IMP-00017: 由于 ORACLE 错误 942, 以下语句失败:
 "CREATE TRIGGER "AAA".tri_a_emp_outdate after update of out_date on "
 "a_emp  for each row"
 "begin"
 "  delete from a_stat where emp_no=:new.emp_no;"
 "  insert into a_stat (emp_no,amount) "
 "  select t.emp_no, count(distinct d_code ) from if_list t "
 "  where t.emp_no=:new.emp_no"
 "  and t.d_code in "
 "  (select d_code from a_info where d_use in ('1','2'))"
 "  group by t.emp_no;"
 "end tri_a_emp_outdate;"
IMP-00003: 遇到 ORACLE 错误 942
ORA-00942: 表或视图不存在
IMP-00055: 警告: 在导出文件中未找到分区或子分区 "a_emp": "DA2012_1"
成功终止导入, 但出现警告。要导入a_emp  这个表 其他trigger要求的表都已经导入了, 但是就是提示a_emp 这个表不存在 目的就想导入这个表的数据。 我手工建立了tri_a_emp_outdate 不行 建好a_emp  导入数据也不行。希望高手能帮忙解答。谢谢了。

解决方案 »

  1.   

    看下错误信息:IMP-00055: 警告: 在导出文件中未找到分区或子分区 "a_emp": "DA2012_1"
    确认导出文件的内容是否包含表a_emp及分区DA2012_1
      

  2.   

    找不到分区表 用sql语句建立分区表
      

  3.   

    把tables=(a_emp:DA2012_1)
    改成tables=(a_emp)
    直接导入整个表.
      

  4.   

    分区表 是存在的 确认存在 其他几个表也有分区 都是这样导入 到成功了 就是这个表 我估计是这个表有触发器, 一旦导入数据就触发触发器,但这个触发器建立需要有这个表 ,我现在手工建立了触发器 可是还是报这个错误 IMP-00055: 警告: 在导出文件中未找到分区或子分区  "a_emp": "DA2012_1"
    成功终止导入, 但出现警告
      

  5.   

    用以下命令只显示内容看看:
    imp AAA/aaa@TEST fromuser=AAA touser=AAA file=I:\111\AAA4.dmp tables=(a_emp:DA2012_1) SHOW=Y
      

  6.   

    这个问题我 之前 还是真没有遇到,继续关注ing
      

  7.   

    最终查下来可能是导出时候出错了,谢谢各位关注  还是要回去看看导出log