- ベストアンサー
キャラクタセットの変換について
現在の環境:Oracle9i 9.2.0.1.0 データベースを国際化対応にする場合に現行のDBがSHIFT_JISが設定されています。このような場合に例えばAL16UTF16に統一したDBを構築するとなるとSHIFT_JISで使用されていた今までのデータはインポートできるのでしょうか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
>インポートできるのでしょうか? 原則的には、自動的にNLSがデータをキャラクタセットに応じて変換してくれます。 一部のデータ属性(blob等)については、オラクルは、格納している内容について 関与しませんので、文字列データを格納するような使い方をしていれば、 自前で変換する必要があります。 ということで、データの移行は問題ないのが通例ですが、キャラクタセットを変更すると、 格納データ長が伸びる場合がありますので、テーブル設計を見直す必要があります。 これは、自動で行ってくれませんので、自前で対応する必要があります。
その他の回答 (1)
- ossan_hiro
- ベストアンサー率66% (88/132)
回答No.2
環境変数のNLS_LANGを合わせる必要があったような気がします。 Exp時にImp先のNLS_LANGに合わせるか、Imp時にExp元のNLS_LANGにする必要があったと思います(昔の話だったかな?)。 >SHIFT_JISで使用されていた今までのデータはインポートできるのでしょうか? データによってはサイズが変わり、桁あふれや領域不足になる可能性があります。 >例えばAL16UTF16に統一したDBを構築するとなると AL16UTF16は各国語キャラクタセットなのでAL16UTF16がキャラクタセットのDBは構築できません。
質問者
お礼
回答ありがとうございました。
お礼
回答ありがとうございました。