1、SQL事务
2、ADO.NET 事务
在ADO.NET 中,可以使用Connection 和Transaction 对象来控制事务。若要执行事务,请执行下列操作:
调用Connection 对象的BeginTransaction 方法来标记事务的开始。
将Transaction 对象分配给要执行的Command的Transaction 属性。
执行所需的
优点:执行效率最佳
限制:事务上下文仅在数据库中调用,难以实现复杂的业务逻辑。
CREATE PROCEDURE Tran1
as
begin tran
set xact_abort on
Insert Into trantest (id,test)values(1,'test')
Insert Into trantest (id,test)values(2,'test')
commit tran
GO
--set xact_abort on 表示遇到错误立即回滚
--当然你也可以这么写
CREATE PROCEDURE tran1
as
begin tran
insert into trantest(id,test)values(1,'test')
if(@@error<>0)
rollback tran
else
begin
insert into trantest(id,test)values(2,'test')
if(@@error<>0)
rollback tran
else
commit tran
end
GO
2、ADO.NET 事务
在ADO.NET 中,可以使用Connection 和Transaction 对象来控制事务。若要执行事务,请执行下列操作:
调用Connection 对象的BeginTransaction 方法来标记事务的开始。
将Transaction 对象分配给要执行的Command的Transaction 属性。
执行所需的

本文介绍了.NET中的事务处理,包括数据库连接事务、TransactionScope事务和EnterpriseServices实现的事务。TransactionScope提供了一种轻量级且自动提升事务级别的机制,而EnterpriseServices则通过COM+实现事务自动化。总结了各种事务方式的优缺点,如数据库连接事务执行效率高但需要手动维护连接,TransactionScope使用简便且能自动处理分布式事务。
最低0.47元/天 解锁文章
946

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



