DECLARE
TYPE T_V_SCHEMA IS TABLE OF VARCHAR2 (20);
V_SCHEMA T_V_SCHEMA;
V_USER VARCHAR2(20);
BEGIN
V_SCHEMA := T_V_SCHEMA ('xxx','yyy'); --Input Schema Name
V_USER := 'zzz';
FOR L_V_SCHEMA IN 1 .. V_SCHEMA.COUNT --Loop schema in the list
LOOP
FOR L_V_TABLE IN (SELECT TABLE_NAME --Grant select on Table to the User
FROM DBA_TABLES
WHERE OWNER = V_SCHEMA (L_V_SCHEMA))
LOOP
EXECUTE IMMEDIATE 'grant select on '
|| V_SCHEMA (L_V_SCHEMA)
|| '.'
|| L_V_TABLE.TABLE_NAME
|| ' to '
|| V_USER;
END LOOP L_V_TABLE;
END LOOP;
END;
/
Không có nhận xét nào:
Đăng nhận xét