| ページ一覧 | ブログ | twitter |  書式 | 書式(表) |

MyMemoWiki

DB2 エクスポート、インポートで文字化け

提供: MyMemoWiki
ナビゲーションに移動 検索に移動

DB2 エクスポート、インポートで文字化け

DB2 | {category 文字化け}

問題

  • EXPORT および IMPORT を使ってデータを移動させると、IMPORT 先で文字化けが発生することがある。
  • EXPORT および IMPORT は、データベース・コード・ページと、コマンド行プロセッサー (CLP) のコード・ページの間で文字コード変換が行われるため、これをあわせる必要がある。

対処

EXPORT 元のデータベースと IMPORT 先のデータベースのコード・ページが一致している場合

  • EXPORT および IMPORT を実行する CLP のコード・ページを、データベース・コード・ページと一致させます。

EXPORT 元のデータベースと IMPORT 先のデータベースのコード・ページが一致しない場合

  • 変換が一度だけになるように設定します。たとえば EXPORT で宛先データベースのコード・ページに変換し、IMPORT は無変換で行います。

EXPORT 元のデータベースより IMPORT 先のデータベースの文字集合が小さい場合

  • EXPORT 元と同じ、もしくはより大きい文字集合をサポートするデータベースに IMPORT します。JP) です。
  • 日本語をサポートする主なコード・ページは、文字集合の大きい順に 1208 (UTF-8) > 943 (SJIS) > 954 (EUC-JP)

注意

<blockquote>ローカルPCのIBM Data Studio を利用し、サーバーのDBのエクスポート、インポートを行うと、クライアントの設定に依存するためか、やはり文字化けが発生する。ローカルPCの IBM Data Studio はコマンドの生成に利用し、上記の設定を行った後にコマンドの実行は、各サーバーで直接行うのが吉。</blockquote>

Windows環境での例

  • UTF-8からUTF-8へ移行する例

DB2コードページの確認

C:\IBM\SQLLIB\BIN>db2 get db cfg for [データベース名] | find "コード・ページ"
データベース・コード・ページ                            = 1208

DB2コードページを環境変数に設定

C:\IBM\SQLLIB\BIN>SET DB2CODEPAGE=1208

コマンドプロンプト(CLP自体)のコードページをUTF-8に設定

C:\IBM\SQLLIB\BIN>chcp 65001

EXPORT/IMPORT の実施

C:\IBM\SQLLIB\BIN>db2
connect to [データベース名]
export ...