SQL Granting already existing rights to users / revoking them : <p>I have to answer some questions based on the statements below. Initially, user A is the owner of relation R, and no other user holds privileges on R. The following are executed:</p>

<pre><code>By A: GRANT INSERT ON R TO B WITH GRANT OPTION;
By B: GRANT INSERT ON R TO C WITH GRANT OPTION;
By C: GRANT INSERT ON R TO D WITH GRANT OPTION;
By D: GRANT INSERT ON R TO B WITH GRANT OPTION;
By B: REVOKE INSERT ON R FROM C CASCADE;
</code></pre>

<p>The questions are: What happens when D grants privileges to B, but they already exist? And what users still have the privileges after the last line is executed?</p>
