У меня есть блок процедуры:
begin for i in (select grantee ,table_name ,privilege from user_tab_privs_made where grantee='TEST') loop revoke i.privilege on i.table_name from i.grantee; end loop; end;
и возникает ошибка:
Необходимо отозвать отзыв как EXECUTE IMMEDIATE , создание динамической строки с командой, которую вы хотите выполнить:
execute immediate 'revoke ' || i.privilege || ' on ' || i.table_name || ' from ' || i.grantee;