|
日時: 2008/07/23 16:54
名前: lightbox
|
拡張子:
PROCEDURE DATAPUMP
/**********************************************************/
/* 変数の定義 */
/**********************************************************/
AS
J_HANDLE NUMBER;
J_STS VARCHAR2(20);
/**********************************************************/
/* 処理開始 */
/**********************************************************/
BEGIN
DBMS_OUTPUT.PUT_LINE('デバッグ:開始');
/***************************/
/* OPEN */
/***************************/
J_HANDLE := DBMS_DATAPUMP.OPEN(
'EXPORT'
,'TABLE'
,NULL
,NULL
,'COMPATIBLE'
,DBMS_DATAPUMP.KU$_COMPRESS_METADATA
);
/***************************/
/* 出力ファイル */
/***************************/
DBMS_DATAPUMP.ADD_FILE(
J_HANDLE
,'TABLE_BACKUP_TEST.ORA'
,'MYDIR'
,NULL
,DBMS_DATAPUMP.KU$_FILE_TYPE_DUMP_FILE
);
/***************************/
/* SQL 式で スキーマを指定 */
/***************************/
DBMS_DATAPUMP.METADATA_FILTER(
J_HANDLE
,'SCHEMA_EXPR'
,'IN (''ORA_01'')'
);
/***************************/
/* SQL 式で 表を指定 */
/***************************/
DBMS_DATAPUMP.METADATA_FILTER(
J_HANDLE
,'NAME_EXPR'
,'IN (''社員マスタ'',''商品マスタ'')'
);
/***************************/
/* データを出力しない */
/***************************/
DBMS_DATAPUMP.DATA_FILTER (
J_HANDLE
,'INCLUDE_ROWS'
,0
);
/***************************/
/* 開始 */
/***************************/
DBMS_DATAPUMP.START_JOB(
J_HANDLE
,0
);
/***************************/
/* JOB 終了まで待機 */
/***************************/
DBMS_DATAPUMP.WAIT_FOR_JOB(
J_HANDLE
,J_STS
);
/***************************/
/* 終了ステータスの表示 */
/***************************/
DBMS_OUTPUT.PUT_LINE('処理終了:'||J_STS);
/**********************************************************/
/* 一番外側のブロックの例外処理 */
/**********************************************************/
EXCEPTION
WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE('例外発生:'||SQLCODE||':'||SQLERRM);
END;
|