我正在使用Oracle 11,而且我在两个数据库之间移动表时遇到问题。我已成功导出datadumb,如下所示:
expdp.exe www/www@xe tables=TABLE1,TABLE2,TABLE3 directory=dmpdir dumpfile=tables.dmp
当我尝试:
impdp.exe www2/www2@xe tables=TABLE1,TABLE2,TABLE3 directory=dmpdir dumpfile=tables.dmp
结果我得到以下例外:
ORA-39002: invalid operation
ORA-39166: Object WWW2.TABLE1 was not found.
ORA-39166: Object WWW2.TABLE2 was not found.
ORA-39166: Object WWW2.TABLE3 was not found.
如果我尝试:
impdp.exe www2/www2@xe remap_tables=WWW2:TABLE1,TABLE2,TABLE3 directory=dmpdir dumpfile=tables.dmp
我明白了:
LRM-00101: unknown parameter name 'remap_tables'
在我的情况下,我无法使用数据库链接。导入和导出表格时如何更改架构?我有点误解了Oracle吗?
答案 0 :(得分:5)
使用REMAP_SCHEMA=WWW:WWW2
并删除tables=
子句。
impdp.exe www2/www2@xe REMAP_SCHEMA=WWW:WWW2 directory=dmpdir dumpfile=tables.dmp
答案 1 :(得分:2)
我认为您需要REMAP_SCHEMA参数。 REMAP_TABLE(注意拼写)参数用于更改表的名称,而不是它所属的模式。