SQL Server重温 事务

 更新时间:2012年08月03日 16:50:22   作者:  
当对多个表进行更新的时候,某条执行失败。为了保持数据的完整性,需要使用事务回滚
为什么使用事务
  当对多个表进行更新的时候,某条执行失败。为了保持数据的完整性,需要使用事务回滚。
显示设置事务
复制代码 代码如下:

begin try
begin transaction
insert into shiwu (asd) values ('aasdasda');
commit transaction
end try
begin catch
select ERROR_NUMBER() as errornumber
rollback transaction
end catch

隐式设置事务
复制代码 代码如下:

set implicit_transactions on; -- 启动隐式事务
go
begin try
insert into shiwu (asd) values ('aasdasda');
insert into shiwu (asd) values ('aasdasda');
commit transaction;
end try
begin catch
select ERROR_NUMBER() as errornumber
rollback transaction; --回滚事务
end catch
set implicit_transactions off; --关闭隐式事务
go

显示事务以下语句不能使用,隐式事务可以
复制代码 代码如下:

alter database;
backup;
create database;
drop database;
reconfigure;
restore;
update statistics;

显示事务可以嵌套使用
复制代码 代码如下:

--创建存储过程
create procedure qiantaoProc
@asd nchar(10)
as
begin
begin try
begin transaction innerTrans
save transaction savepoint --创建事务保存点
insert into shiwu (asd) values (@asd);
commit transaction innerTrans
end try
begin catch
rollback transaction savepoint --回滚到保存点
commit transaction innerTrans
end catch
end
go
begin transaction outrans
exec qiantaoProc 'asdasd';
rollback transaction outrans

事务嵌套,回滚外层事务时,如果嵌套内的事务已经回滚过则会有异常。此时需要使用事务保存点。如上代码。

相关文章

  • SQLServer2019配置端口号的实现

    SQLServer2019配置端口号的实现

    这篇文章主要介绍了SQLServer2019配置端口号的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04
  • SQl Function 创建函数实例介绍

    SQl Function 创建函数实例介绍

    这篇文章主要介绍了SQl Function 创建函数实例介绍,需要的朋友可以参考下
    2016-10-10
  • MS SQL Server数据库清理错误日志的方法

    MS SQL Server数据库清理错误日志的方法

    SQL服务器磁盘空间爆满导致数据库无法访问。远程到服务器上,发现原来是SQL错误日志文件惹的祸,数据库在1秒内产生上100M大小的日志,没多长时间就将磁盘空间堵满了,下面说说解决方案
    2013-11-11
  • SQL Server 触发器详情

    SQL Server 触发器详情

    这篇文章主要介绍了SQL Server 触发器,触发器是一种特殊类型的存储过程,它不同于之前的我们介绍的存储过程。触发器主要是通过事件进行触发被自动调用执行的。而存储过程可以通过存储过程的名称被调用。需要的朋友可以参考一下
    2021-09-09
  • sql语句优化之用EXISTS替代IN、用NOT EXISTS替代NOT IN的语句

    sql语句优化之用EXISTS替代IN、用NOT EXISTS替代NOT IN的语句

    sql语句优化之用EXISTS替代IN、用NOT EXISTS替代NOT IN的语句...
    2007-08-08
  • SQL Server解析/操作Json格式字段数据的方法实例

    SQL Server解析/操作Json格式字段数据的方法实例

    SQL SERVER没有自带的解析json函数,需要自建一个函数(表值函数),下面这篇文章主要给大家介绍了关于SQL Server解析/操作Json格式字段数据的相关资料,需要的朋友可以参考下
    2022-08-08
  • SQL数据库连接超时时间已到的问题

    SQL数据库连接超时时间已到的问题

    这篇文章主要介绍了SQL数据库连接超时时间已到的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-04-04
  • sql中的 IF 条件语句的用法详解

    sql中的 IF 条件语句的用法详解

    本文给大家介绍sql中的 IF 条件语句的用法,本文结合示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2023-05-05
  • SQL Server 索引维护sql语句

    SQL Server 索引维护sql语句

    SQL Server 索引维护sql语句,有需要的朋友可以参考下。
    2009-08-08
  • SQL Server数据库的修复SQL语句

    SQL Server数据库的修复SQL语句

    使用数据库的过程中,由于断电或其他原因,有可能导致数据库出现一些小错误,比如检索某些表特别慢,查询不到符合条件的数据等。
    2008-11-11

最新评论