Introduction :
À partir d’Oracle Database 12c, l’erreur ORA-65096 peut apparaître lors de la création d’un nouvel utilisateur dont le nom entre en conflit avec un nom d’utilisateur ou de rôle commun. Elle découle des règles de nommage imposées aux utilisateurs et aux rôles communs dans Oracle Database. Heureusement, une solution de contournement permet de créer ces utilisateurs sans rencontrer l’erreur.
Comprendre le problème :
À partir d’Oracle Database 12c, les utilisateurs et rôles communs partagent le même espace de noms. Créer un utilisateur dont le nom correspond à celui d’un utilisateur ou d’un rôle commun peut donc provoquer un conflit, qui se traduit par l’erreur ORA-65096 signalant un nom d’utilisateur ou de rôle commun non valide.
Solution : définir le paramètre de session _ORACLE_SCRIPT
Pour contourner ce problème, il est possible de définir le paramètre de session _ORACLE_SCRIPT sur true. Ce réglage indique à Oracle Database de traiter les instructions CREATE USER et ALTER USER comme si elles étaient exécutées dans SQL*Plus avec la commande SET ROLE NONE, ce qui permet de créer des utilisateurs dont le nom déclencherait normalement l’erreur ORA-65096.
Mise en œuvre :
Exécutez l’instruction SQL suivante pour définir le paramètre de session _ORACLE_SCRIPT :
ALTER SESSION SET "_ORACLE_SCRIPT"=true;Une fois ce paramètre défini, vous pouvez créer les utilisateurs souhaités sans rencontrer l’erreur ORA-65096.
Conclusion :
L’erreur ORA-65096 peut être frustrante lorsque vous créez des utilisateurs dont le nom entre en conflit avec un nom commun. En définissant le paramètre de session _ORACLE_SCRIPT sur true, vous pouvez la contourner et créer les utilisateurs souhaités dans Oracle Database 12c et les versions ultérieures.


