T-SQL 事务17 Mar 2025 | 5 分钟阅读 事务是在数据库上执行的工作单元。任何事务都会从数据库读取数据或向数据库写入数据。 事务是对数据库的一个或多个更改的传播。 例如,如果我们正在记录、更新或删除表的历史记录,那么我们会创建表的事务。为了控制数据完整性的操作至关重要,它用于处理数据库的错误。我们将一些SQL查询添加到组中,并执行事务部分。 事务的属性![]() 事务具有四个属性,它们被称为 ACID 属性 -
事务控制![]() 这些命令用于控制事务,这些命令如下所示 -
事务命令与 DML 命令(如 INSERT、UPDATE 和 DELETE)一起使用。当创建或删除表时,它不能应用。 在 MS SQL Server 中,要使用事务控制命令,我们需要启动 'trans start' 或事务命令;否则,该命令可能无法工作。 COMMIT 命令它也被称为 事务命令。 该命令被数据库用来保存更改。 语法 下面给出了 COMMIT 命令的语法。 示例 查看 EMPLOYEES 表,其中包含记录。
以下命令示例将从 age = 30 的表中删除记录,然后在数据库中 COMMIT 更改。 在结果部分中,表中的第 4 行和第 6 行已被删除。SELECT 语句生成以下给出的输出
ROLLBACK 命令ROLLBACK 命令是用于撤消尚未保存到数据库的事务的事务命令。Rollback 命令用于 撤消 一组事务。 语法 示例 查看 EMPLOYEES 表,其中包含以下记录。
以下命令示例将从 age = 20 的表中删除记录,然后在数据库中 ROLLBACK 更改。 删除操作对表的结果没有影响。
SAVEPOINT 命令SAVEPOINT 是事务中的一个点,当我们将事务回滚到某个点而无需回滚整个操作时。 语法 SAVEPOINT 命令的语法 该顺序用于在事务语句之间创建 SAVEPOINT。 SAVEPOINT 语法 在下面的示例中,我们从 EMPLOYEES 表中删除三个不同的记录。然后在每次删除之前创建一个 SAVEPOINT,以便我们可以在返回数据到其原始状态时加载 SAVEPOINT。 示例 考虑具有以下记录的 EMPLOYEES 表 -
以下是一系列操作 - Begin Tran 已创建保存点。 已删除 1 行。 已创建保存点。 已删除 1 行。 这些命令占据了他们的位置。 我们决定 ROLLBACK SAVEPOINT,它被识别为 SP2。 因为 SP2 是在 1 次删除之后创建的,所以 2 次最后一次删除尚未完成。 回滚已完成。 注意:当我们回滚到 SP2 时,第一次删除已经发生。已选择 6 行。
SET TRANSACTION 命令set transmission 命令将用于启动数据库事务。该命令用于生成事务的特性,如下所示 SET TRANSACTION 的语法 以下是 SET TRANSACTION 的语法。 下一主题T-SQL 索引 |
我们请求您订阅我们的新闻通讯以获取最新更新。