select * from tablename where rownum<=100

解决方案 »

  1.   

    中间的数据如51到100
    select * from (select tablename.*,rownum t from tablename where rownum<=100) where t>50
      

  2.   

    exp test/123 file=c:\bb.dmp tables=test query='where rownum<=100' log=c:\aa.log
      

  3.   

    WATER(水清)说的是对的,我试过了。
      

  4.   

    分开传输,最好加上order by
      

  5.   

    各位大侠,谢谢你们的关注,不过我的意思是能否通过一个命令语句将所有表的前100行都导出并存在dmp文件中,而你们说的是将其中一个表的前100行导出来,这样工作量还是太大。
      

  6.   

    liuyi8903(好好学习) 说得是没错,但一次只能导一个表,其它怎么办?
    如果有300张表怎么办?
      

  7.   

    我觉得可以这样:新生成一个B帐号,将待导出的表的前一百条数据用create tabname as select * from A.tabname where rownum <= 100; 在B下新生成一个同名表名。关键是这里的tabname是个动态的值,但这个可以用游标或写个简单的程序都很容易实现与表的数量一致的动态SQL,在执行这些SQL即可。剩下的工作就只是备份B名下的表和数据就OK了。