When a REVOKE statement is executed, already open result sets are not impacted. This should be mentioned
in the user documentation, at least here: ref/rrefsqljrevoke.html.
Permissions are checked at statement execute time; if this succeeds, a cursor/result set will be able to access all rows
in the result set even if privileges/roles are revoked after the execute but before the result set/cursor is closed.