Таблицы принадлежат кому-то . Владелец предоставляет привилегии другим пользователям или ролям; в вашем случае это будет роль. Поскольку роль не зависит от табличного пространства (вы упомянули), вы должны создать его так же просто, как
create role r_read_only;
. Затем владелец предоставит привилегию SELECT
на его таблицы для этой роли, например,
grant select on emp to r_read_only;
grant select on dept to r_read_only;
Такая роль будет предоставлена другим пользователям, например
grant r_read_only to littlefoot;
, и пользователь littlefoot
сможет выбирать из этих таблиц.
То же самое и с другой вашей ролью, без разницы:
create role r_upd_ins;
grant insert, update on emp to r_upd_ins;
grant r_upd_ins to bigfoot;