ROLLBACK TRANSACTION 保存点名称 --回滚到自定义的保存点
BEGIN TRANSACTION--开始事务
DECLARE @errorSun INT --定义错误计数器
SET @errorSun=0 --没错为0
UPDATE a SET id=232 WHERE a=1 --事务 *** 作SQL语句
SET @errorSun=@errorSun+@@ERROR --累计是否有错
UPDATE aa SET id=2 WHERE a=1 --事务 *** 作SQL语句
SET @errorSun=@errorSun+@@ERROR --累计是否有错
IF @errorSun<>0
BEGIN
PRINT '有错误,回滚'
ROLLBACK TRANSACTION--事务回滚语句
END
ELSE
BEGIN
PRINT '成功,提交'
COMMIT TRANSACTION--事务提交语句
END
sql事务处理
BEGIN TRANSACTION--开始事务
DECLARE @errorSun INT --定义错误计数器
SET @errorSun=0 --没错为0
UPDATE a SET id=232 WHERE a=1 --事务 *** 作SQL语句
SET @errorSun=@errorSun+@@ERROR --累计是否有错
UPDATE aa SET id=2 WHERE a=1 --事务 *** 作SQL语句
SET @errorSun=@errorSun+@@ERROR --累计是否有错
IF @errorSun<>0
BEGIN
PRINT '有错误,回滚'
ROLLBACK TRANSACTION--事务回滚语句
END
ELSE
BEGIN
PRINT '成功,提交'
COMMIT TRANSACTION--事务提交语句
END
DBTransaction Db = new DBTransaction()//获取连接
SqlConnection conn = Db.GetConnection()
//获取事务
SqlTransaction trans = Db.GetTransaction(conn)
//定义一个布尔型变量
bool isUseExamTemplate = false
try
{
for (int i = 0i <examNormTemplate.Counti++)
{
ExamNormLinkEntity item = (ExamNormLinkEntity)examNormTemplate[i]
isUseExamTemplate = examMethod.Add(item, conn, trans)
}
//提交事务
Db.Commit(trans)
}
catch(Exception e)
{
//回滚事务
Db.Rollback(trans)
throw e
}
finally
{
//关闭连接
Db.Close(conn)
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)