大师傅们本人是菜鸟,想你们请教下情况是这样的。
我用exp命令备份一整个数据库zgk.dmp
让后我删除数据库test表的数据或者删除整个表,这俩种情况
然后能否用imp命令或者其他办法用zgk.dmp只恢复这个test表的数据或者表。

解决方案 »

  1.   

    --导入语法范例
    IMP system/manager@TEST  FILE=c:\XXX分析(OF_CW).dmp  TABLES=(OF_CW)
      

  2.   

    可以的,但是你也可以用闪回去回复
    如果不是truncate的话
      

  3.   

    你好楼主:
        在解答问题之前,我先提醒下楼主,回复内容的时候一定要引用下您打算回复的楼层,这样别人才可收到通知。对于问题我是这样做的实验:
        一、启动数据库,创建一个用户u1,密码u1
        create user u1 identified by u1;
        grant connect, resource to u1;
        二、创建表u1, u1t1并插入一些数据
        create table u1 (id int, name varchar2(10));
        create table u1t1 (id int, name varchar2(10));
       
        insert into u1 values (0, 'rose');
        insert into u1 values (1, 'rose');
        insert into u1t1 values (0, 'rose');
        三、在客户端连接到数据库,用exp导出用户u1下的所有表,这里我并没有导出整个数据库,估计效果是一样的:
        exp u1/u1@oracle11gvm_orcl file = u1.dmp owner = u1 log = u1.log
       四、删除数据库的那张u1表,但是保留u1t1表:
        drop table u1;
       五、在客户端用imp只恢复u1表:
        imp u1/u1@oracle11gvm_orcl file = u1.dmp table = u1 fromuser = u1 log = u1.log
       
       结果:在数据库里面删除的那张表成功的恢复,而u1t1表没有影响。    欢迎楼主访问我的博客,共同学习Oracle:http://blog.sina.com.cn/u/1788966977
      

  4.   


    我也测试了下
    imp sd_al/yan0526@yan0526 file=e:\yan0426.dmp table= TEST01 fromuser=sd_al log=imp_log0426.txt
    在cmd 跑的时候提示 未知道参数‘table’  处理参数失败 我的QQ 908039083 可否加我下谢谢
      

  5.   

    可以的,IMP可以指定恢复的表
      

  6.   

    你好,是我的失误,不是table,是tables,对不起了,这个他有提示的,位置的参数:table,提示你要:imp help=y,你就输入这个命令,查查啊,里面有的是tables,呵呵,祝你测试成功