컴퓨터활용능력 1급데이터베이스 일반난이도 3MCQ

컴퓨터활용능력 1급 데이터베이스 일반 기출문제 #1593

문제

다음 SQL 쿼리에서 사용자 권한을 확인하고 접속 로그를 기록하는 가장 적절한 방법은?

SQL
-- 사용자가 고객 정보를 조회할 때마다 권한을 확인하고 -- 접속 이력을 기록해야 하는 상황 SELECT customer_id, customer_name, phone, email FROM customers WHERE customer_id = 1001;

① 뷰(VIEW)를 생성하여 권한이 있는 사용자만 특정 컬럼에 접근하도록 제한하고, 트리거로 접속 로그 기록 ② 저장 프로시저를 생성하여 권한 확인 로직과 접속 로그 기록을 함께 처리 ③ CASE 문을 사용하여 권한에 따라 컬럼 값을 조건부로 표시하고, UNION으로 로그 테이블에 삽입 ④ 서브쿼리로 권한을 확인하고 EXISTS 절로 접속 로그를 동시에 기록

정답

2

해설

저장 프로시저는 권한 확인 로직과 접속 로그 기록을 하나의 실행 단위로 처리할 수 있어 가장 적절하다. ①번의 뷰는 정적 권한 제어에는 좋지만 동적 로그 기록이 어렵고, ③번의 CASE문과 UNION은 문법적으로 부적절하며, ④번의 EXISTS 절로는 로그 기록이 불가능하다.

이런 문제 20~50개를 한 번에 풀어보세요

매번 새로 추가되는 모의고사 + 오답 자동 복습 + 회차별 실력 추적. 회원가입 후 무료 이용.

[컴퓨터활용능력 1급] 데이터베이스 일반 기출 #1593 | sqldpass