我尝试将dmp文件导入我的数据库中的特定表格。
我正在运行此命令:
impdp '/ as sysdba' directory=exp
dumpfile=exp_01.dmp,exp_02.dmp
logfile=log_01.log
table_exists_action=truncate
parallel=8
tables=my_user.my_tbl
query=my_user.my_tbl: "where trunc(sysdate)-730 > to_date(snapshot_month, 'yyyy/mm')
提出异常
LRM-00116:语法错误')'关注' yyyy / mm'
这是正确的where子句,我用一个简单的查询对表进行检查。
我尝试将双逗号更改为单个逗号(并将其添加到to_date格式),依此类推,但我所做的任何更改都没有效果。
在网络中,查询参数还有几个语法选项(双\单逗号)。
答案 0 :(得分:0)
最终对我有用的解决方案是在doube逗号之前添加反斜杠。
这是新命令:
impdp '/ as sysdba' directory=exp
dumpfile=exp_01.dmp,exp_02.dmp
logfile=log_01.log
table_exists_action=truncate
parallel=8
tables=my_user.my_tbl
query=my_user.my_tbl:\"where trunc(sysdate)-730 > to_date(snapshot_month, 'yyyy/mm')\"
我想我的目的是为了逃避双重逗号,因为查询将会忽略它们。
感谢。