Consider the following:
- grant select on books to frank.
- revoke select on books from public.
At the end of executing the above SQL script, will frank have 'select' access to the 'books' table?
This question came from our site for professional and enthusiast programmers.
Yes, frank will be able to perform a select on books. Basically Oracle will use the most permissive privilege, which is the one allowing selection.
Reference: Documentation (under roles).
Note that this is different from you granting privileges with admin option to UserB, who in turn grants privileges to UserC. In this case revoking privileges from UserB would automatically "cascade" revoke them from UserC.