ORA-39083

  Base de données

Lorsqu’on importe, via impdp, deux fois le même schéma dans la même instance Oracle (par exemple pour avoir un schéma de test et un de prod), on peut être confronté à cette erreur :

ORA-39083: Echec de la création du type d'objet TYPE:"MONSCHEMA"."T_VARCHAR2_TAB" avec erreur :
ORA-02304: constante d'identificateur d'objet non valide
SQL en échec :
CREATE EDITIONABLE TYPE "MONSCHEMA"."T_VARCHAR2_TAB" OID 'FCAF535E494D5154E043110114AC9DC7' AS TABLE OF VARCHAR2(4000);

Impdp tente de recréer le même OID et il échoue. Cela entraine généralement des erreurs de compilation et l’import ce termine avec des avertissements.

Solution : ajouter le paramètre transform=OID:n à la fin de la commande d’import. Cela permet à oracle de générer un nouvel OID. Valable à partir de la version 10g (comme l’import datapump).