헤르메스 LIFE

[Exception] PL/SQL: ORA-00942: 테이블 또는 뷰가 존재하지 않습니다 본문

Exception

[Exception] PL/SQL: ORA-00942: 테이블 또는 뷰가 존재하지 않습니다

헤르메스의날개 2013. 8. 27. 11:29
728x90



PL/SQL 개발 시 아래와 같은 오류가 발생되었습니다.

다른 계정의 테이블을 SELECT 하면서 발생한 오류입니다.

이는 RESOURCE 권한만을 부여했기 때문인 것으로 일반 조회는 상관없으나, PL/SQL에서의 조회는 안되는 것 같습니다.


Compilation errors for PROCEDURE SCOTT.DEPT 

Error: PL/SQL: ORA-00942: 테이블 또는 뷰가 존재하지 않습니다
Line: 40
Text: FROM SCOTT.DEPT -- DEPT

Error: PL/SQL: SQL Statement ignored
Line: 18
Text: SELECT



GRANT SELECT ON [대상계정].[대상테이블] TO[권한을 줄 계정];

GRANT SELECT ON SCOTT.DEPT TO DEVSTD;



SELECT 'GRANT SELECT ON [대상계정].' || [대상테이블]|| ' TO [권한을 줄 계정];'
FROM ALL_TABLES
WHERE OWNER = '[대상계정]'

-- 모든 테이블의 사용자 권한 주기
-- 조회결과를 다시 실행하면 됩니다.
SELECT 'GRANT SELECT ON SCOTT.' ||TABLE_NAME || ' TO DEVSTD;'
FROM ALL_TABLES
WHERE OWNER = 'SCOTT'



728x90