社区
疑难问题
帖子详情
SQL的意外错误捕获问题
starwang
2003-04-02 10:33:30
请教在SqlServer中有没有对意外错误的捕获语句,
类似于oracle的Exception
在整个存储过程中,无论哪里出现错误,都会跳转到Exception之后的错误处理。
我找了好久,都没找到!
...全文
64
6
打赏
收藏
SQL的意外错误捕获问题
请教在SqlServer中有没有对意外错误的捕获语句, 类似于oracle的Exception 在整个存储过程中,无论哪里出现错误,都会跳转到Exception之后的错误处理。 我找了好久,都没找到!
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
leimin
2003-04-02
打赏
举报
回复
PLS TRY
SET XACT_ABORT ON
GO
...
DECALRE @RC INT
SELECT @RC=@@ERROR
IF @RC<>0 THEN.....
DJMPH
2003-04-02
打赏
举报
回复
同意 leimin(黄山光明顶)
但是如果在使用SET XACT_ABORT ON以后,再
SELECT @RC=@@ERROR
IF @RC<>0 THEN
ROLLBACK TRAN
是不可能执行的,因为出错的同时就ROLLBACK并且不往下继续了。
leimin
2003-04-02
打赏
举报
回复
MSSQL SERVER 默认SET XACT_ABORT OFF
这样在INSERT INTO....语句错误之后,会继续执行UPDATE,只是ROLLBACK INSERT的操作。
如果SET XACT_ABORT ON
这样在INSERT INTO....语句错误之后,不会继续执行UPDATE,只是ROLLBACK 全部的事务。
:-)
starwang
2003-04-02
打赏
举报
回复
我的意思是如果有多条语句,难道需要在每一个后面都加这样的判断吗?
比如
DECALRE @RC INT
BEGIN TRAN
INSERT INTO TABLENAME(....)VALUES(...)
UPDATE Tablename (....)
SELECT @RC=@@ERROR
IF @RC<>0 THEN
ROLLBACK TRAN
ELSE
COMMIT TRAN
如果第一个insert 语句出了问题,会走到if判断吗?
leimin
2003-04-02
打赏
举报
回复
@@error是SQL SERVER的一个整数的全局变量,返回当前的ERROR MESSAGE.
比如
DECALRE @RC INT
BEGIN TRAN
INSERT INTO TABLENAME(....)VALUES(...)
SELECT @RC=@@ERROR
IF @RC<>0 THEN ROLLBACK TRAN
ELSE COMMIT TRAN
starwang
2003-04-02
打赏
举报
回复
怎么是这样的,是不是在中间的任何代码出错,
都会走到
SELECT @RC=@@ERROR
IF @RC<>0 THEN..... 这里吗?
还是只对上一条语句有效?
SQL
Server数据库的应用级持续数据保护系统.pdf
SQL
Server数据库的应用级持续数据保护系统.pdf
C#人事管理系统winform版
我们一个小组做的实训作业。分为web版和winform版。均使用。NET开发。有很强的初学价值。
学生管理系统 C#项目实例
学生管理系统 C#项目实例 运用的是vs2008开发的 希望对你们有用!
python
sql
语句异常
捕获
_Python 的异常处理
在执行程序的过程中,可能会遇到多多少少的“
意外
情况”,比如除数为 0,文件找不到,变量未声明等。解释器在发现这些异常
错误
后,会当机立断终止程序的运行,如果我们想程序继续运行,提高代码的健壮性,就需要用到异常处理。try 和 exceptPython 中使用 try 关键字来
捕获
异常,使用 except 关键字来处理异常,没有 catch 关键字。不进行异常处理的情况:def devide(a,b)...
T-
SQL
编程中的异常处理-异常
捕获
(try catch)与抛出异常(throw)
本文出处:http://www.cnblogs.com/wy123/p/6743515.html T-
SQL
编程与应用程序一样,都有异常处理机制,比如异常的
捕获
与异常的抛出(try catch throw),本文简单介绍异常
捕获
与异常抛出在T-
SQL
编程中的实际使用 。 异常处理简单说明 异常
捕获
在应用程序编程中非常常见,提供了处理程序运行时出现的任何
意外
或异常情况的方法刚...
疑难问题
22,300
社区成员
121,734
社区内容
发帖
与我相关
我的任务
疑难问题
MS-SQL Server 疑难问题
复制链接
扫一扫
分享
社区描述
MS-SQL Server 疑难问题
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章