暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Oracle 使用DBMS_DATAPUMP包将序列与表一起导入。

askTom 2017-05-03
960

问题描述

大家好

我正在尝试将序列与表一起导入。
在导出的文件中,存在所有三个表 (T_VISIT,T_SUBVISIT,T_SERVICES) 和序列 (PATIENT_INFO_SEQ,PATIENT_SERVICES_REG2_SEQ)。
对于导出,我已经使用了DBMS_DATAPUMP包。
这个转储文件是从KNK架构导出的,我想在架构KNK1中导入


declare
h1 number;
v_schema VARCHAR2(32);
v_time VARCHAR2(32);
v_job_state varchar2(4000);
begin
SELECT to_char(SYSDATE, 'DD_MM_YYYY_hh24_mi_ss') INTO v_time FROM DUAL;
v_schema:='KNK1';
h1 := dbms_datapump.open(operation => 'IMPORT', job_mode => 'SCHEMA');
DBMS_DATAPUMP.add_file (h1,filename => 'Test.DMP',directory => 'EXP',filetype => DBMS_DATAPUMP.KU$_FILE_TYPE_DUMP_FILE);
DBMS_DATAPUMP.add_file (handle => h1,directory => 'EXP',filename => 'IMPapi.log',filetype => DBMS_DATAPUMP.KU$_FILE_TYPE_LOG_FILE);
dbms_datapump.metadata_filter(handle => h1,name => 'SCHEMA_EXPR',value => '= ''KNK1''');
dbms_datapump.metadata_filter(handle => h1,name => 'NAME_EXPR',value => 'IN (''T_VISIT'',''T_SUBVISIT'',''T_SERVICES'')', object_type => 'TABLE');
dbms_datapump.metadata_filter(handle => h1,name => 'NAME_EXPR',value => 'IN (''PATIENT_INFO_SEQ'',''PATIENT_SERVICES_REG2_SEQ'')', object_type => 'SEQUENCE');
dbms_datapump.set_parameter (h1, 'TABLE_EXISTS_ACTION', 'REPLACE');
dbms_datapump.start_job(h1);
DBMS_DATAPUMP.WAIT_FOR_JOB(h1, v_job_state);
DBMS_OUTPUT.PUT_LINE(v_job_state);
end;


我收到以下问题。
ORA-31627: API call succeeded but more information is available.

以下是日志详细信息。
Master table "KNK1"."SYS_IMPORT_SCHEMA_03" successfully loaded/unloaded
ORA-39039: Schema expression "= 'KNK1'" contains no valid schemas.
ORA-31655: no data or metadata objects selected for job
Starting "KNK1"."SYS_IMPORT_SCHEMA_03":
Job "KNK1"."SYS_IMPORT_SCHEMA_03" successfully completed at 10:31:36


请帮我解决这个问题。
谢谢
拉维·莱
Oracle Apex开发人员
(萨拉达研究实验室)

专家解答

SCHEMA_EXPR用于您要导入的架构from(KNK)。您已经说明了您要导入的架构to(KNK1)。

把这个换成KNK!

并使用metaada_remap过程从KNK -> KNK1重新映射架构:

http://docs.oracle.com/database/121/ARPLS/d_datpmp.htm#ARPLS66047
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论