Existe una gran posibilidad de que los privilegios para seleccionar de la tabla 1 se hayan otorgado a una función y la función se le haya otorgado a usted. Los privilegios otorgados a un rol no están disponibles para PL/SQL escrito por un usuario, incluso si al usuario se le ha otorgado el rol.
Esto se ve mucho para los usuarios a los que se les ha otorgado el rol de dba en objetos propiedad de sys. Un usuario con rol dba podrá, por ejemplo, SELECT * from V$SESSION
, pero no podrá escribir una función que incluya SELECT * FROM V$SESSION
.
La solución es otorgar permisos explícitos sobre el objeto en cuestión directamente al usuario, por ejemplo, en el caso anterior, el usuario de SYS tiene que GRANT SELECT ON V_$SESSION TO MyUser;