Sửa một giao dịch
Hôm nay bạn nhận được một script chưa đúng. Nó được viết bởi một đồng nghiệp của bạn, người không biết cách hoàn thành nó. Đồng nghiệp của bạn đã cố chuyển $100 từ tài khoản 1 sang tài khoản 5 và ghi lại các giao dịch đó vào bảng transactions.
Bạn nhanh chóng nhận ra có vài lỗi. SQL Server không nhận diện các câu lệnh giao dịch mà script sử dụng.
Bạn có thể sửa script này không?
Bài tập này là một phần của khóa học
Giao dịch và Xử lý lỗi trong SQL Server
Hướng dẫn bài tập
- Chạy mã để kiểm tra có lỗi.
- Sửa tất cả lỗi.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
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