1. BEGIN TRANSACTION: 开始一个事务。
BEGIN TRANSACTION;
2. COMMIT: 提交事务,使得之前的更改永久生效。
COMMIT;
3. ROLLBACK: 回滚事务,撤销自上次提交以来的所有更改。
ROLLBACK;
示例
假设有一个名为 accounts 的表:
CREATE TABLE accounts (
id INTEGER PRIMARY KEY,
account_name TEXT,
balance INTEGER
);
INSERT INTO accounts (account_name, balance) VALUES
('Alice', 1000),
('Bob', 1500);
下面是一个事务的简单示例,涉及从一个账户向另一个账户转账:
-- 开始事务
BEGIN TRANSACTION;
-- 减少 Alice 的余额
UPDATE accounts
SET balance = balance - 500
WHERE account_name = 'Alice';
-- 增加 Bob 的余额
UPDATE accounts
SET balance = balance + 500
WHERE account_name = 'Bob';
-- 提交事务
COMMIT;
在这个例子中,事务开始于 BEGIN TRANSACTION;,然后包含两个 UPDATE 语句,分别减少 Alice 的余额并增加 Bob 的余额。最后,通过 COMMIT; 提交事务。如果在事务执行的过程中发生错误,可以使用 ROLLBACK; 回滚事务,使得所有更改都不会生效。
保持事务的原子性、一致性、隔离性和持久性(ACID 属性)对于数据库系统的可靠性和稳定性至关重要。在实际应用中,务必小心使用事务,确保它们被正确处理,以防止数据异常或损坏。
转载请注明出处:http://www.pingtaimeng.com/article/detail/14195/SQLite