다음은 항공권 예약 시스템에서 좌석 예매와 결제 처리를 수행하는 트랜잭… | [7급 국가직 데이터베이스론] 26년 1회차 기출문제 상세 페이지
1[7급 국가직 데이터베이스론] 26년 1회차
다음은 항공권 예약 시스템에서 좌석 예매와 결제 처리를 수행하는 트랜잭션 코드이다. 트랜잭션 수행 중 UPDATE 문이 끝난 뒤 (가) 지점에서 장애가 발생하여 이 트랜잭션이 성공적으로 완료되지 못할 때, 이 상황과 관련된 트랜잭션의 특성과 해결 방법으로 옳은 것은? (단, 동시에 수행 중인 다른 트랜잭션은 없다)BEGIN
UPDATE 좌석
SET 상태 = “예약완료”
WHERE 항공편 = “KE011_KR” AND 좌석번호 = “22A”;
(가)
INSERT INTO 결제(결제번호, 항공편, 금액, 상태)
VALUES (“Q_PAY1011”, “KE011_KR”, 1500000, “승인완료”);
END;
1
원자성(Atomicity)을 보장하기 위한 ROLLBACK 처리
2
지속성(Durability)을 보장하기 위한 TRIGGER 처리
3
고립성(Isolation)을 보장하기 위한 SAVEPOINT 처리
4
일관성(Consistency)을 보장하기 위한 START TRANSACTION 처리
해설
일부만 반영된 상태를 남기지 않도록 원자성을 보장해야 하며, 이미 수행된 UPDATE를 ROLLBACK으로 취소한다.
좌석은 예약완료인데 결제 기록이 없으면 ‘전부 실행 아니면 전부 미실행’ 원칙이 깨지므로, 로그를 이용해 UNDO하여 트랜잭션 시작 전 상태로 되돌린다.
- 지속성은 커밋된 결과의 영구 보존이고, TRIGGER는 이벤트 발생 시 자동 실행되는 동작이라 미완료 트랜잭션 복구 수단이 아니다.
- 고립성은 동시 트랜잭션 간 간섭 방지인데 동시 트랜잭션이 없고, SAVEPOINT는 부분 철회 지점을 표시할 뿐이다.
- 일관성은 무결성 제약 유지이며, START TRANSACTION은 트랜잭션 시작 명령이라 이미 수행된 작업을 취소하지 못한다.
오류나 개정된 내용이 보이면 알려주세요
이어서 풀어보기
[7급 국가직 데이터베이스론] 26년 1회차 25문항 이어서 보기문제·정답·해설을 한 페이지에서 이어서 볼 수 있어요비슷한 기출
- dba가사용자park에게테이블[student]의데이터를갱신할수있는시스템권한을부여하고자하는sql문을작성하고자한다.다음에주어진sql문의빈칸을알맞게채운것은?20년-4회차-정보처리기사-필기
- dml에해당하는sql명령으로만나열된것은? {"answer":3,"content":[{"content":"delete,update,create,alter20년-1, 2회차-정보처리기사-필기
- sql의명령을사용용도에따라ddl,dml,dcl로구분할경우,그성격이나머지셋과다른것은? {"answer":4,"content":[{"content":"se22년-2회차-정보처리기사-필기