【DB2逆引きリファレンス目次】 【DB2逆引きリファレンス目次#保守作業編】 【DB2逆引きリファレンス目次#データの移動】
前提
- データベース接続が必要
- 以下のいずれかが必要: SYSADM権限, DBADM権限
- もしくはインポート作業で発生する個別の行挿入、行更新、表作成を行う権限
解説
データをインポートするには、CLPのIMPORTコマンドを用います。
IMPORT FROM インポート元ファイル名 OF データ形式指定
[MODIFIED BY インポートオプション指定 ]
[ALLOW WRITE ACCESS]
[COMMITCOUNT コミットカウント指定 ] [RESTARTCOUNT リスタートカウント指定 ]
[MESSAGES メッセージ出力先ファイル ]
インポート方法指定
インポート元ファイル名
: インポートするデータを格納しているファイルのパスを指定します。
データ形式指定
: ファイルのデータ形式を以下のいずれかで指定します。
DEL
: カンマ区切りのASCII形式。いわゆるCSV(Comma Separated Values)形式。
IXF
: 表の型情報なども含むバイナリー形式。
MODIFIED BY インポートオプション指定
: インポート処理のオプションを以下のいずれかの形式で指定します。複数のオプションを指定する場合は、空白で区切って並べます。
chardel''
: 列を括る文字として単引用符が用いられているDEL形式のデータをインポートする際に指定します。
chardel""
: 列を括る文字として二重引用符が用いられているDEL形式のデータをインポートする際に指定します。
codepage= コードページ指定
: DEL形式でデータをインポートする際に、ファイルで用いられてるコードページを指定します。
ALLOW WRITE ACCESS
: インポート実行中の表に対する読み書きを許可します。インポート方法がREPLACEもしくはCREATEの場合は指定できません。
COMMITCOUNT コミットカウント指定
: インポート処理時のコミット発行単位を行数で指定します。
RESTARTCOUNT リスタートカウント指定
: インポートファイルの何行目から読み取りを開始するのか指定します。
MESSAGES メッセージ出力先ファイル
: IMPORTコマンドの出力メッセージを記録するファイルのパスを指定します。指定しない場合は標準出力にメッセージが出力されます。
インポート方法指定
: データのインポート方法を以下の形式のいずれかで指定します。
INSERT INTO 表名
: 各行を指定した表に挿入します。表中に予め存在していたデータは更新されません。
INSERT_UPDATE INTO 表名
: 各行を指定した表に挿入します。挿入しようとした行と同じプライマリキーを持つ行が既に存在していた場合は、挿入しようとしている行で上書きします。
REPLACE INTO 表名
: 指定した表の内容をすべて削除した後に各行を挿入します。
REPLACE_CREATE INTO 表名
: 指定した表の内容をすべて削除した後に各行を挿入します。指定した表がない場合は、表および索引を作成してから挿入を実行します。
CREATE INTO 表名 [IN 表スペース名 [INDEX IN 索引用表スペース名 ] [LONG IN LONG表スペース名 ] ]
: 表および索引を作成した上で、各行を指定した表に挿入します。
使用例
DEL形式のファイル(ここではemployee.del)を表(ここではemployee)に挿入する例。
db2 ==> IMPORT FROM employee.del OF DEL INSERT INTO employee↓
IXF形式のファイル(ここではemployee.ixf)を、表(ここではemployee)を作成した上で挿入する例。
db2 ==> IMPORT FROM employee.ixf OF IXF CREATE INTO employee↓
注意
- インポートは行の挿入を繰り返し実行することと等価のため、インポートする行数に比例してログが発生します。 大量の行を挿入する場合は、発生するログの大きさに注意してください。