Het is waarschijnlijk een combinatie van luiheid en de SET ROLE
commando.
Ik ben het er niet mee eens dat het niet is toegestaan vanwege complexe afhankelijkheden. Oracle beheert al complexe afhankelijkheden. En in 12c is het mogelijk om een rol toe te kennen aan een object.
Ik denk dat de echte reden waarom objecten de rollen van de gebruiker niet erven, is vanwege de SET ROLE
opdracht. Het is mogelijk dat een gebruiker een rol toegewezen krijgt, maar deze binnen een sessie in- en uitschakelt. Dat is een domme functie en ik heb het nog nooit gebruikt. Maar theoretisch zou het opnieuw moeten worden gecompileerd binnen dezelfde sessie of transactie, wat erg verwarrend zou zijn.