# 使用 EXP 限制 Oracle 导出数据的条数

Database @ 20 July 2007

Oracle自带的 命令,可以很方便的从Oracle库中导出所需要的数据。基本语法可以通过 help=y 查看。

今天在使用的时候碰到一个问题,需要导出指定库中的前200条记录,在网上搜索了一下,大部分文章都是这样说的:
exp scott/tiger TABLES=(emp,bonus) QUERY="WHERE job='SALESMAN' and sal<1600"

于是我试着这样做
exp scott/tiger TABLES=(emp,bonus) QUERY="WHERE rownum<201"

实际测试的时候,发现老是报 LRM-00112: multiple values not allowed for parameter 'query' 的错误。再后来发现引号是需要转义的,网上那么多文章都错了……

下面是正确的写法:

windows下的写法:
C:\exp>exp userid=tkyte/tkyte tables=t query="""where object_id < 5000""" linux下的写法: $ exp userid=/ tables=t query=\"where object_id \< 5000\"

Leave a Reply