远程(内网)那边的oracle的数据非常大,而我只想取其中一点数据就得了(1000条记录),怎么通过sqlplus或者一些工具如sql developer或plsql developer来导出,最好能以SQL的方式导出表的结构和记录,然后我在本地这里直接执行这些sql就得了。

解决方案 »

  1.   

    如果个别的表,可以使用exp按照表模式导入,如果表很多,比较麻烦。
    导出结构,只需要加rows=n参数就行了,如:
    c:\> exp test/test@tnsname file=test.dmp rows=n
    如果导出个别表及1000条数据,如:
    c:\> exp test/test@tnsname file=test.dmp tables=(table1,table2) query=\"where rownum<=1000\"
    当然,如果表很多的情况下可以使用参数文件parfile,如:参数文件test.par,内容如下
    file=test.dmp
    tables=(table1,table2,
    table3,table3)
    query=\"where rownum<=1000\"
    使用参数文件导出
    c:\> exp test/test@tnsname parfile=test.par当然,也可试试pl/sql developer的导出功能,但导出太多表也是比较麻烦。
      

  2.   

    cmd
    exp sys/admin@orcl file=d:\table.dmp tables=table query=\" where filed1 like '00%'\"imp sys/admin@orcl full=y  file= d:\table.dmp  ignore=y
      

  3.   

    cmd
    exp sys/admin@orcl file=d:\table.dmp tables=table query=\" where filed1 like '00%'\"imp sys/admin@orcl full=y file= d:\table.dmp ignore=y