트랜잭션 고치기
오늘 잘못된 스크립트를 받으셨습니다. 동료가 작성했지만 마무리하는 방법을 몰랐어요. 동료는 계정 1에서 계정 5로 $100을 이체하고, 그 이동을 transactions 테이블에 기록하려고 했습니다.
바로 여러 오류가 있음을 알아차리셨을 거예요. SQL Server가 사용된 트랜잭션 문을 인식하지 못합니다.
이 스크립트를 고칠 수 있나요?
이 연습은 강의의 일부입니다
SQL Server에서의 트랜잭션과 오류 처리
연습 안내
- 코드를 실행해 오류가 있는지 확인하세요.
- 모든 오류를 수정하세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
BEGIN TRY
START TRAN;
UPDATE accounts SET current_balance = current_balance - 100 WHERE account_id = 1;
INSERT INTO transactions VALUES (1, -100, GETDATE());
UPDATE accounts SET current_balance = current_balance + 100 WHERE account_id = 5;
INSERT INTO transactions VALUES (5, 100, GETDATE());
FINISH TRAN;
END TRY
BEGIN CATCH
UNDO TRAN;
END CATCH