1.页面中的事务
using (DbConnection connection = db.CreateConnection())
{
connection.Open();
DbTransaction transaction = connection.BeginTransaction();//开始事务
try
{
using (IDataReader data = db.ExecuteReader(dbCommand, transaction))
{
while (data.Read())
{
tblRolltexResults info = new tblRolltexResults(data);
tempInfoList.Add(info);
}
}
transaction.Commit();//提交事务
}
catch (Exception ex)
{
transaction.Rollback();// 回滚
throw ex;
}
finally
{
connection.Close();
}
}
2.存储过程中的事务
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go
ALTER PROCEDURE [dbo].[COPY]
@id nvarchar(100),
@name nvarchar(100)
AS
declare @rv nvarchar(50)
SET NOCOUNT ON
BEGIN TRANSACTION
begin
--增删改操作
COMMIT TRANSACTION
end
if @@error>0
begin
ROLLBACK TRANSACTION
SET @rv='存在错误'
RAISERROR (@rv, 11, 1)
end