2013-02-26 2 views
0

사용자 1 부여 테이블에 대한 사용 권한 선택, 삭제 (테이블 인덱스라고도 함) 권한을 사용자 2에게 부여합니다.다른 사용자에게 테이블 및 인덱스 사용 권한 부여

user2가 해당 테이블에 존재하는 인덱스를 볼 수 없다는 것을 알 수 있습니다.

사용자 2는이 SQL을 실행합니다

select DBMS_METADATA.GET_DDL('INDEX','TableIndex') from DUAL; 
Result is: The specified object was not found in the database. 

사용자 2가 선택 SQL 쿼리가 더 보조금없이 표, 난, 인덱스가 사용됩니다 희망에 실행하면 (인덱스가 표시되지 altho)?

답변

0

dbms_metadata.get_ddl을 사용하려면 see hereselect_catalog_role이 부여되어야합니다. 그러나 색인을 볼 수는 없더라도 색인이 사용 가능합니다 (가능한 경우).

0

"색인 사용 권한"같은 것은 없습니다.

테이블에 대한 사용 권한을 부여합니다. 선택, 업데이트, 삭제 등 DML을 실행할 수 있기 때문에 테이블에 대한 사용 권한을 부여합니다.하지만 인덱스에는 이러한 작업을 수행하지 않으므로 부여 할 항목이 없습니다.

User2가 User1의 테이블에 인덱스를 만들 때 DDL을 볼 수 없다는 사실은 옳습니다. 그것은 그들의 사업이 아닙니다. User2는 테이블에서 선택하고 해당 쿼리는 User1이 만든 적절한 인덱스를 사용합니다.

관련 문제