oracle エクスポートデータの特定カラムがnullになる | パークのソフトウエア開発者ブログ|ICT技術(Java・Android・iPhone・C・Ruby)なら株式会社パークにお任せください

パークのソフトウエア開発者ブログ|ICT技術(Java・Android・iPhone・C・Ruby)なら株式会社パークにお任せください

開発の解決方法や新しい手法の情報を、パークのエンジニアが提供します。パークのエンジニアが必要な場合は、ぜひお気軽にお問い合わせ下さい。 株式会社パーク:http://www.pa-rk.co.jp/

初投稿です。
oracleの不具合に関する情報を書きたいと思います。

【発生条件】
1.oracle11g以降のバージョン
2.テーブルにnot null制約とデフォルト値を設定したカラムを追加
3.ダイレクト・パス・エクスポート(exp direct=y)で上記2.のテーブルをエクスポート

【発生現象】
上記2.で追加したカラムにデフォルト値ではなくnullが入る

【回避方法】
以下のどちらかで回避できます。

1.ダイレクト・パス・エクスポート(exp direct=y)をやめて、従来型パス・エクスポート
 (exp direct=n)でエクスポートする。
2.expコマンドではなく、expdpコマンド(Data Pump Export)でエクスポートする。

【補足】
・通常、ダイレクト・パス・エクスポートに比べて従来型パス・エクスポートは処理速度が
 劣ります。
・exp/impコマンドは、oracle11g以降は基本的にサポートされていません。
(参考URL)
http://otndnld.oracle.co.jp/document/products/oracle11g/111/doc_dvd/server.111/E05768-02/exp_imp.htm