학습용 기출·복원자료 분류 확인SQLD · 2023년 49회 SQL 기본 및 활용 · 28번
B_USER가 A_USER.TB_A를 조회하고 수정할 수 있게 하는 DCL은?
1
GRANT SELECT, UPDATE ON A_USER.TB_A TO B_USER
정답 근거객체 권한 부여 문법은 `GRANT 권한 ON 객체 TO 사용자`다. WHERE 대상 행을 찾는 SELECT와 값을 바꾸는 UPDATE 권한을 함께 부여한다. 따라서 1번 보기 ‘GRANT SELECT, UPDATE ON A_USER.TB_A TO B_USER’의 적용 여부를 문제 조건과 대조해야 한다.
2
GRANT SELECT, UPDATE TO B_USER
오답 이유ON 뒤의 대상 객체가 빠져 객체 권한 부여 문법이 완성되지 않는다. 따라서 2번 보기 ‘GRANT SELECT, UPDATE TO B_USER’의 적용 여부를 문제 조건과 대조해야 한다.
3
REVOKE SELECT ON A_USER.TB_A FROM B_USER
오답 이유REVOKE는 권한을 부여하지 않고 기존 권한을 회수한다. 따라서 3번 보기 ‘REVOKE SELECT ON A_USER.TB_A FROM B_USER’의 적용 여부를 문제 조건과 대조해야 한다.
4
DENY UPDATE ON A_USER.TB_A TO B_USER
오답 이유Oracle 객체 권한 부여에 사용하는 명령은 DENY가 아니라 GRANT다. 따라서 4번 보기 ‘DENY UPDATE ON A_USER.TB_A TO B_USER’의 적용 여부를 문제 조건과 대조해야 한다.
ANSWER & EXPLANATION
정답 1번
핵심 판단은 1번 ‘GRANT SELECT, UPDATE ON A_USER.TB_A TO B_USER’입니다. 객체 권한 부여 문법은 `GRANT 권한 ON 객체 TO 사용자`다. WHERE 대상 행을 찾는 SELECT와 값을 바꾸는 UPDATE 권한을 함께 부여한다.