I'm currently dealing with some GRANT
options using Oracle Database Express Edition 11g. Consider the following small code example where some users grant some privileges to other users:
-- User A
GRANT Select, Insert, Update, Delete ON T TO B,C WITH GRANT OPTION ;
-- User B
GRANT Select ON T TO C WITH GRANT OPTION ;
GRANT Insert ON T TO C ;
-- USer C
GRANT Select, Insert, Update ON T TO D ;
User A is the creator of Table T and performs the following REVOKE
operation.
Now REVOKE Update ON T FROM C
is performed. Since no constraint is specified, the REVOKE
operation should either cancel, because otherwise there would be an abandoned UPDATE
privilege at D
, or delete the privileges of both C
and D
.
Now my question is: Is the REVOKE
statement actually cancelled or removes both C
and D
privileges? Or in other words, is the result after executing that revoke statement that both C
and D
still have the UPDATE
privilege or not?
Thanks in advance.