Azure SQL 数据库事务与锁定机制详解
1. 事务模式
Azure SQL 有三种事务模式,其中隐式(implicit)模式下,当前事务提交或回滚后会自动开启新事务,无需手动开启事务,仅需提交或回滚每个事务,该模式主要用于合规和向后兼容。在大多数情况下,应用执行简单数据库命令时会使用自动提交(auto - commit),当需要管理更复杂的特定事务行为时,建议切换到显式(explicit)模式。事务模式可通过显式 T - SQL 语句在连接级别进行控制,不同客户端驱动的事务模式默认设置可能不同,使用时需查看文档。
2. 本地事务
应用开发者主要与单个 Azure SQL 数据库实例中的事务交互,即本地事务。本地事务常封装在存储过程的复杂业务逻辑中,这有助于缩短事务时长,避免应用与数据库代码间的多次往返。若不使用存储过程,可通过客户端驱动 API 控制事务行为。
以下是在 T - SQL 脚本(如存储过程)中使用显式事务的示例:
-- Create table structures
CREATE TABLE dbo.Orders (ID int PRIMARY KEY, ProductID int, OrderDate datetime);
CREATE TABLE dbo.Inventory (ProductID int PRIMARY KEY, QuantityInStock int CONSTRAINT CHK_QuantityInStock CHECK (QuantityInStock>-1));
-- Fill up with some sample value
超级会员免费看
订阅专栏 解锁全文
180

被折叠的 条评论
为什么被折叠?



