我想授予我创建权限的用户:选择,插入,更新,删除特定架构。
我是否需要在架构中执行此操作? (alter session set current_schema ='my_schema';)
提前致谢
答案 0 :(得分:0)
用户通常只需要一个语句即可在一个步骤中授予权限。
有多个解决方法没有在所有表上使用GRANT SELECT
FOR x IN (SELECT * FROM user_tables)
LOOP
EXECUTE IMMEDIATE 'GRANT SELECT ON ' || x.table_name || ' TO <<someone>>';
END LOOP;
或
declare
cursor c1 is select table_name from user_tables;
cmd varchar2(200);
begin
for c in c1 loop
cmd := 'GRANT SELECT ON '||c.table_name|| <<TO YOURUSERNAME>>;
execute immediate cmd;
end loop;
end;
Oracle可以实现架构级别授权
GRANT SELECT ON <schema name> to <<user>>