SQL Server2012中的Throw语句尝试 RAISERROR和THROW比较
2016-02-18 11:31
295 查看
SQL SERVER2012实现了类似C#抛出异常的Throw语句。相比较于SQL Server2005之前使用@@ERROR,和SQL Server2005之后使用RAISERROR()引发异常都是一个不小的进步.
一、RAISERROR和TRY…CATCH
1.SQL Server2005/2008中,使用RAISERROR和TRY…CATCH语句来抛出异常相比较根据@@ERROR进行判断来讲已经进步了很多。但是使用RAISERROR有一个非常不好的一点是无法返回真正出错的行数。
--使用throw返回正确行数
begin tran
BEGIN TRY
select 1/0;
commit
END TRY
begin catch
rollback;
throw
end catchView Code
一、RAISERROR和TRY…CATCH
1.SQL Server2005/2008中,使用RAISERROR和TRY…CATCH语句来抛出异常相比较根据@@ERROR进行判断来讲已经进步了很多。但是使用RAISERROR有一个非常不好的一点是无法返回真正出错的行数。
--使用throw返回正确行数
begin tran
BEGIN TRY
select 1/0;
commit
END TRY
begin catch
rollback;
throw
end catchView Code
![](http://images2015.cnblogs.com/blog/135415/201602/135415-20160218113955081-541430286.jpg)
相关文章推荐
- Oracle level
- win7上安装alfresco ECM,使用mysql数据库
- SQL时间戳日期时间转换
- Mysql的lock tables和unlock tables
- MongoDB概念解析
- SQL Server 跨库同步数据
- SQL 重置一个表
- PLSQL Developer报“动态执行表不可访问,本会话的自动统计被禁止”的解决方案
- SqlServer双机热备技术实践笔记
- pl/sql时间格式显示问号乱码解决
- Oracle知识点
- mongodb的使用
- redis设置访问密码
- Sql日期时间格式转换
- 查看mysql表的备注等属性
- Oracle CPU/PSU补丁安装详细教程
- 多音字按拼音首字母排序sql语句的问题解决方案
- 服务状态 停止
- 极分享发布于2015-11-05 16:54 1/440 45个非常有用的 Oracle 查询语句
- MySQL 5.6 性能调优my.cnf详解