# 事务操作

URL: https://caijiao.org/sqlite/transaction/basics
Source: docs/sqlite/transaction/basics.md
Description: 本章节介绍 SQLite 中事务的概念及操作方法，帮助用户理解如何通过事务保证数据库操作的原子性、一致性，避免数据不完整和异常。

事务是一组操作的集合，这些操作要么全部执行成功，要么全部失败回滚，保证数据一致性。

## 开启事务

```sql
BEGIN TRANSACTION;
````

## 提交事务

```sql
COMMIT;
```

## 回滚事务

```sql
ROLLBACK;
```

## 示例

```sql
BEGIN TRANSACTION;

UPDATE accounts SET balance = balance - 100 WHERE user_id = 1;
UPDATE accounts SET balance = balance + 100 WHERE user_id = 2;

COMMIT;
```

如果中间操作出错，可以使用 `ROLLBACK` 取消所有修改。

事务保证了数据库操作的原子性和一致性，避免部分更新导致数据错误。
