2018-09

【Oracle】DEFAULT付の項目にimpdpするとORA-38500が発生することに対するちょっとした愚痴


特定のテーブルAからデータをexpdpして、別スキーマにある同名テーブルAに、default付きの項目をaddしたA'をつくり、A→A'にimpdpすると、「ORA-38500: Unsupported operation: Oracle XML DB not present」というOracleエラーが発生する。
これが意味不明。
…っていう愚痴の記事。

どうも「dmpファイル側には存在しない項目をdefault付きでaddしたテーブルにはimpdpができない」ということでエラーになってるっぽいのだが、このエラーメッセージからは全くそれが連想できない。
「impdp ORA-38500」とかでググってもそれっぽい記事も出てこないので最初全くわからなかった。
なんとなく項目の違いがあるせいかもってのは疑いのネタにできたが、それにしたってこのエラーメッセージはわかりづらすぎる。
Oracle側の内部事情がいろいろあるんだろうが、もう少しわかりやすいメッセージにできなかったもんかね。
(まあOracleのエラーがわかりづらいのは今に始まったわけじゃないのでこれもその仲間というだけの話なのだけど)