SQLServer2005的事务处理
来源:互联网 发布:魔兽世界mac客户端 编辑:程序博客网 时间:2024/05/09 07:17
SqlServer2005是微软推出的企业级数据库开发平台,它不同于以往的SqlServer2000,在功能上,2005有了更强大的表现。我们在此来研究一下2005的事务处理。
以下的代码是传统的2000的事务处理方法:
create table demo
(
sid int primary key,
sname varchar(10)
)
go
select * from demo
/*传统的处理方式的不足*/
declare @error int
set @error = 0
begin tran
insert demo values(1,'Tom')
set @error = @@error + @error
insert demo values(1,'Jack')
set @error = @@error + @error
if @error > 0
begin
print 'Error!'
rollback tran
end
这段代码可以实现事务的原子性功能。但是使用起来不方便。比如,事务处理的操作如果很多的话,每行代码后都会执行 set @error = @@error + @error,用来接收全局错误变量的值。
2005中改变了这种操作,而是采用了开发语言的异常处理机制。具体代码见下:
begin try
begin tran
insert into tDemo values(2,'Jack')
insert into tDemo values(2,'Mary')
commit tran
end try
begin catch
declare @i int
set @i = @@error
if(@i = 2627)
select error_number() as 错误号 ,error_message() as 错误信息
else
select '其他错误!'
rollback tran
end catch
在上面代码中添加了两个块,try和catch ,类似于开发语言中的try{},catch{}。当try块中数据出错时,回自动跳到catch块中接受异常处理,另外,还可以利用error_number()获取错误号和错误信息提示。
- SQLServer2005的事务处理
- 存储过程中的简单事务处理---SQLServer2005系列
- SQLSERVER2005的安全特色
- SQLServer2005的JDBC连接
- sqlserver2005的问题
- sqlServer2005递归的实现
- SQLserver2005的表分区
- SQLServer2005的企业管理器
- SQLServer2005的Top功能
- SQLServer2005的Top功能
- sqlserver2005游标的使用
- SQLServer2005的Top功能
- SQLServer2005的Top功能
- sqlSERVER2005的over用法
- sqlServer2005的操作语句
- asp+sqlserver2005的心得体会
- sqlserver2005的session管理
- SQLServer2005
- 总结 @ 在 C# 中的用法
- Linux环境进程间通信(三)消息队列
- 8.1.3 使用定时器
- 存储过程中的简单事务处理---SQLServer2005系列
- CToolTipCtrl使用详细解说
- SQLServer2005的事务处理
- php中英文手册(集成用户注释08/12/2007)
- ASP.NET程序中常用代码集
- 实现Hibernate分页查询原理解读
- DotNet版的ExtJS单用户Blog系统源码解析
- ArcIMS根据查询结果定位的方法总结(C#+ADF)
- 嵌入式启动过程
- Oracle 包变量的一种使用
- 偏頭疼預防