-- To grant all tables to user
declare
cursor tab_names is select table_name from user_tables;
begin
for tab in tab_names loop
--Replace USER_NAME with your user name
execute immediate 'GRANT SELECT ON '||tab.table_name||' to <USER_NAME>';
end loop;
end;
-- To grant all views to user
declare
cursor view_names is select view_name from user_views;
begin
for v in view_names loop
--Replace USER_NAME with your user name
execute immediate 'GRANT SELECT ON '||v.view_name||' to <USER_NAME>';
end loop;
end;