Oracle 다른 스키마의 테이블 권한을 특정 사용자에게 부여

불냥·2024년 8월 12일
post-thumbnail

오라클에서 다른 스키마의 테이블 권한을 특정 사용자에게 부여하는 명령어는
GRANT ALL ON schema.table_name TO user;
이러한 방식이 있다.

하지만 특정 테이블이 아닌 해당 스키마의 전체 테이블 권한을 부여할 때에는 저 명령어를 하나하나 치기에는 무리가 있다.

그래서 해당 스키마의 모든 테이블의 권한을 특정 사용자에게 부여할 때 사용하는 명령어를 가져왔다.

BEGIN
FOR r IN (SELECT * FROM dba_objects WHERE owner = 'schema' AND object_type IN ('TABLE', 'VIEW', 'SEQUENCE', 'PROCEDURE', 'FUNCTION', 'PACKAGE')) LOOP
EXECUTE IMMEDIATE 'GRANT ALL ON schema.' || r.object_name || ' TO user';
END LOOP;
END;

profile
개인 공부 및 프로젝트 중 발생한 오류에 대한 정리를 위한 블로그입니다.

0개의 댓글