* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.
|
|
Window7 32bit, Linux 64bit 등 |
|
|
[cubrid_rel] 수행 결과 |
|
|
[도움말]-[버전정보] 확인 |
|
|
java, php, odbc 등 입력 |
* CUBRID 응용 오류, SQL 오류 또는 SQL 튜닝 관련된 문의는 반드시 다음의 내용을 추가해 주세요. 비밀글이나 비밀 댓글도 가능합니다.
* 저희가 상황을 이해하고, 재현이 가능해야 알 수 있는 문제들이 많습니다. 가능한 정보/정황들을 부탁합니다.
| 에러 내용 및 재현 방법 | 재현 가능한 Source와 SQL |
| 관련 테이블(인덱스, 키정보 포함) 정보 | CUBRID 홈 디렉토리 아래 log 디렉토리 압축 |
-------------- 아래에 질문 사항을 기입해 주세요. ------------------------------------------------------------------------
안녕하세요
JDBC 다른 유저에 생성된 Table plan 조회 문의드립니다.
DB : A
User : user1(user1은 connection pool로 관리), user2
Table : user1.test1 , user2.test2
JDBC 로 A, user1 에 접속 후 cubridStmt.getQueryplan 으로 user2의 test2 plan을 확인할 방법이 있나요?
user1 에 대한 ID,PW 정보만 가지고 있고 user2는 따로 정보가 없습니다.
table을 생성할때마다 user1에 select 권한을 주는건 불가능에 가깝고 user1에 DBA 권한을 줄 수도 없을거같습니다.
쿼리 실행 계획(plan) 을 조회하려면, 기본적으로 해당 테이블에 대한 SELECT 권한이 user1에게 있어야 합니다.
즉, 쿼리 실행 계획은 SELECT 문 수행이 가능한 권한을 가진 사용자만 확인할 수 있으며, CUBRID JDBC API의 getQueryplan() 역시 내부적으로 SELECT 질의를 실행하는 방식이기 때문에, 권한이 없는 테이블에 대해서는 실행 계획을 알 수 없습니다.