开始使用免费开始使用

纠正一个事务

今天您收到了一段不正确的脚本。它由一位同事编写,但他不知道如何完成。您的同事尝试将 $100 从账户 1 转到账户 5,并把这些变动记录到 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
编辑并运行代码