C'est probablement une combinaison de paresse et de SET ROLE
commande.
Je ne suis pas d'accord sur le fait que ce n'est pas autorisé en raison de dépendances complexes. Oracle gère déjà des dépendances complexes. Et en 12c il est possible d'attribuer un rôle à un objet.
Je pense que la vraie raison pour laquelle les objets n'héritent pas des rôles de l'utilisateur est à cause du SET ROLE
commande. Il est possible qu'un utilisateur se voie attribuer un rôle mais qu'il l'active et le désactive au cours d'une session. C'est une fonctionnalité stupide et je ne l'ai jamais vue utilisée. Mais théoriquement, cela nécessiterait une recompilation au sein de la même session ou transaction, ce qui serait vraiment déroutant.