sql server 事务应用例子
时间: 2023-09-06 21:12:47 浏览: 73
假设我们有一个银行账户表(Accounts),其中包含账户号(AccountNumber)和账户余额(Balance)两个字段。现在我们想要实现一个转账的功能,需要保证转账的两个操作要么同时成功,要么同时失败,这就需要使用事务来保证数据的一致性。
以下是一个示例的 SQL Server 事务应用例子:
```sql
BEGIN TRANSACTION;
UPDATE Accounts SET Balance = Balance - 1000 WHERE AccountNumber = '123456';
UPDATE Accounts SET Balance = Balance + 1000 WHERE AccountNumber = '654321';
IF @@ERROR <> 0
BEGIN
ROLLBACK TRANSACTION;
END
ELSE
BEGIN
COMMIT TRANSACTION;
END
```
上述代码中,使用 `BEGIN TRANSACTION` 开始一个事务,然后进行两个更新操作,分别是从账户号为 `123456` 的账户中扣除 1000 元,并将其加到账户号为 `654321` 的账户中。如果其中一个更新操作出现错误,那么就会执行 `ROLLBACK TRANSACTION` 回滚事务,否则就会执行 `COMMIT TRANSACTION` 提交事务。这样就保证了转账的两个操作要么同时成功,要么同时失败,从而保证了数据的一致性。
阅读全文