procedure, function, package에서
ORA-00942: 테이블 또는 뷰가 존재하지 않습니다
라는 오류가 발생 할때..
1. 메세지 내용 그대로, 생성하지 않거나, 잘 못 입력한 테이블이나 뷰가 존재 하는지 확인.
2. 모든게 정상인 경우, 다른 OWNER 소유의 TABLE / VIEW라면, GRANT를 확인
3. GRANT도 정상이라면.. procedure / function / package를 호출 하는 owner와, 권한을 부여받은 owner가 동일한지 확인.
ex) A owner 소유의 tblA가 존재 하고, b owner에 해당 테이블을 사용하는 procedure를 작성하였을때,
이 procedure를 c 라는 owner가 호출 해서 사용하는 경우, b owner에 a.tblA에 대한 사용권한이 존재해야 한다.
프로시저는 C가 호출 하지만, 실제 테이블에 접근하는건 B가 되기때문에 그렇다고 생각 함...ㅡㅡ;;
댓글