在Oracle数据库中,exp中的query参数可以指定一个where条件来有条件地导出记录, 对于许多不常使用此选项的朋友来说, 经常会遇到下面这样的错误:
LRM-00112: multiple values not allowed for parameter 'query'
EXP-00019: failed to PRocess parameters, type 'EXP HELP=Y' for help
EXP-00000: Export terminated unsuccessfully
原因:
在where条件中一般都会有空格, 而命令行下就会被释成几个命令行参数, 用单引号或双引号将整个where条件括起来就可以了。
在Windows环境下指定query参数:
exp ... query='where deptno=10'
exp ... query='where deptno=''10'''
exp ... query='where deptno"<"10'
在Solaris(C shell)下指定query参数:
exp ..... query=/"where col1 /< 1000/"
exp ..... query=/"where col1 /< '1000'/"
总结:
在以上的示例中已经说明了如何在query值中使用单引号, 因此大家在看完本文之后, 就应当可以写出正确的where条件了,建议最好写在一个参数文件里, 这样就不用顾忌以上的这些注意事项了。
新闻热点
疑难解答