I got ” ORA-01924: role not granted or does not exist ” error in Oracle database.
ORA-01924: role not granted or does not exist
Details of error are as follows.
ORA-01924: Role 'string' not granted or does not exist Cause: Set role can only be performed with roles granted directly to your account. (e.g. a sub-role cannot be enabled) Action: Don't try to set the role.
After upgrading, forms and pl/sql can’t see some of the roles or don’t recognize that it has been granted to a user’s account. ORA-01924: role ' not granted or does not exist This can occur when trying to set role using either DBMS_SESSION.SET_ROLE or SET ROLE on the 601th+ role (granted).
Role ‘string’ not granted or does not exist
This ORA-01924 error is related with the Set role can only be performed with roles granted directly to your account. (e.g. a sub-role cannot be enabled).
Don’t try to set the role.
Upgrade to 11.2.0.4 or 12c. Does not occur on 11.2.0.3
This is caused by Bug 18934948 – ORA-01924 ENCOUNTERED WHEN A USER HAS MORE THAN 600 ROLES GRANTED
Download and apply patch 18934948 to resolve this issue.
Fixed in 12.2
OR
You can try to drop the related Role and grant any role.
Do you want to learn Oracle Database for Beginners, then read the following articles.
Oracle Tutorial | Oracle Database Tutorials for Beginners ( Junior Oracle DBA )