トップ  > SQLスクリプト  > DBのテーブル単位のインポート(IMPORT)
 



■ DBのテーブル単位のインポート(IMPORT)  (●・ ̄・●)(●・ー・●)(●・_・●)
■ 概要
 テーブル単位のインポートを実行するシェルスクリプトです。
ダンプファイルとテーブル名を引数に指定してシェルを実行します。
■ スクリプト
 IMP_DB_TABLE.sh と言うファイルを作成し、以下の内容をコピーして保存して下さい。 
 ※ファイルには実行権が必要です。
#!/bin/csh
###### 引数チェック
echo '―――――――――――――――――――――――――――――――――――――――――――'
echo 'DBのテーブル単位のインポートスクリプト実行 開始 '
echo '―――――――――――――――――――――――――――――――――――――――――――'
if ( $#argv != 3 ) then
        echo '[ERROR]       引数の数が違います。使用方法は次ぎの通りです。'
        echo '              USAGE:./IMP_DB_TABLE.sh [user/password@OracleSID.domain] [DMP file name] [tablename]'
        echo '              引数エラーにより処理を中断します。'
        echo ''
        echo '―――――――――――――――――――――――――――――――――――――――――――'
        echo ''
        exit
endif

set LOGIN = $1
set DMP_FILENAME = $2
set TABLEN = $3

# マシンのホスト名称
set HOSTN = `hostname`

if ( -e {$DMP_FILENAME} ) then
else
        echo {$DMP_FILENAME}'が存在してません。'
        echo 'DMPファイル名をもう一度ご確認ください。'
        echo ''
        exit
endif

# imp開始
imp $LOGIN \
BUFFER=65536 \
FILE={$DMP_FILENAME} \
IGNORE=Y \
FEEDBACK=10000 \
INDEXES=Y \
ROWS=Y \
CONSTRAINTS=N \
COMMIT=Y \
TABLES= \
        $TABLEN

echo {$HOSTN}' のIMPORTが終了しました。'
echo ''
■ 使用方法
▼ hurricaneユーザのTEST_TBLへデータのインポートを行います。

daruma>  ./IMP_DB_TABLE.sh hurricane/mixer@hmdb1 /export/dbdmp/20050425/daruma_TEST_TBL_200504251156.DMP TEST_TBL

―――――――――――――――――――――――――――――――――――――――――――
DBのテーブル単位のインポートスクリプト実行 開始
―――――――――――――――――――――――――――――――――――――――――――

Import: Release 9.2.0.4.0 - Production on 月 Apr 25 14:06:37 2005

Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.


接続先: Oracle9i Enterprise Edition Release 9.2.0.4.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.4.0 - Production

エクスポート・ファイルはEXPORT:V09.02.00によって従来型パス経由で作成されました
JA16EUCキャラクタ・セットおよびAL16UTF16 NCHARキャラクタ・セットでインポートが完了しました
インポート・サーバーではUTF8キャラクタ・セットを使用します(キャラクタ・セットの変換可能)。
. HURRICANEのオブジェクトをHURRICANEにインポートしています
. . 表                     "TEST_TBL"をインポートしています
                                                            5行インポートされました。
インポートは警告なしで正常終了しました。
daruma のIMPORTが終了しました。

daruma>
▼ 引数が足りない場合。

daruma>  ./IMP_DB_TABLE.sh hurricane/mixer@hmdb1 /export/dbdmp/20050425/daruma_TEST_TBL_200504251156.DMP

―――――――――――――――――――――――――――――――――――――――――――
DBのテーブル単位のインポートスクリプト実行 開始
―――――――――――――――――――――――――――――――――――――――――――
[ERROR]       引数の数が違います。使用方法は次ぎの通りです。
              USAGE:./IMP_DB_TABLE.sh [user/password@OracleSID.domain] [DMP file name] [tablename]
              引数エラーにより処理を中断します。

―――――――――――――――――――――――――――――――――――――――――――

daruma>