数据库最重要的方面是存储数据的能力和操纵数据的能力. COMMIT 和 ROLLBACK 是两种类似的关键字,用于排序存储和逆转数据存储过程。
SQL 承诺和回归
COMMIT 和 ROLLBACK 是对交易进行的。 交易是对数据库执行的最小工作单位。 它是逻辑顺序的命令序列。 交易可以由程序员手动执行,也可以通过自动程序触发。
SQL 承诺
COMMIT 是用于存储交易所执行的更改的 SQL 命令. 发出 COMMIT 命令时,它会保存自上次 COMMIT 或 ROLLBACK 以来的所有更改。
使用 SQL Commit 的语法
1COMMIT;
commit 的语法仅包含一个关键字 COMMIT。
SQL 承诺示例
让我们来考虑下面的表以更好地理解承诺。
CUSTOMER ID | CUSTOMER NAME | STATE | COUNTRY |
---|---|---|---|
1 | Akash | Delhi | India |
2 | Amit | Hyderabad | India |
3 | Jason | California | USA |
4 | John | Texas | USA |
现在,让我们从上面的表中删除一行,州为德克萨斯
。
1DELETE from Customer where State = 'Texas';
如果我们不发布 COMMIT,则发布 DELETE 命令,如果会话关闭,则由于 DELETE 命令所做的更改将丢失。
1DELETE from Customer where State = 'Texas';
2COMMIT;
使用上述命令序列将确保修改后删除命令将被成功保存。
承诺之后的结果
CUSTOMER ID | CUSTOMER NAME | STATE | COUNTRY |
---|---|---|---|
1 | Akash | Delhi | India |
2 | Amit | Hyderabad | India |
3 | Jason | California | USA |
彩色Rollback
ROLLBACK 是 SQL 命令,用于逆转交易所执行的更改,当发出 ROLLBACK 命令时,它会逆转自上次 COMMIT 或 ROLLBACK 以来的所有更改。
用于 SQL Rollback 的语法
1ROLLBACK;
rollback 的语法仅包含一个关键字 ROLLBACK。
SQL 回归示例
让我们来考虑下面的表以更好地理解Rollback。
CUSTOMER ID | CUSTOMER NAME | STATE | COUNTRY |
---|---|---|---|
1 | Akash | Delhi | India |
2 | Amit | Hyderabad | India |
3 | Jason | California | USA |
4 | John | Texas | USA |
现在,让我们从上面的表中删除一行,州为德克萨斯
。
1DELETE from Customer where State = 'Texas';
如果我们发布DELETE命令ROLLBACK,它将返回由于删除命令所做的更改。
1DELETE from Customer where State = 'Texas';
2ROLLBACK;
使用上述命令序列将确保更改后删除命令成功返回。
回归后输出
CUSTOMER ID | CUSTOMER NAME | STATE | COUNTRY |
---|---|---|---|
1 | Akash | Delhi | India |
2 | Amit | Hyderabad | India |
3 | Jason | California | USA |
4 | John | Texas | USA |