社区
MS-SQL Server
帖子详情
为啥@@error 总是0呢?
beyondjay
2008-07-14 11:00:18
一个大存储过程,里面调用了小的过程
小过程catch块里面
RAISERROR( @error_message, @error_severity, 1) with seterror
我用vs调试的时候,@@error = 50000
正常。
但是跳到大的程序里面@@error = 0,奇怪阿,我raiseerror了怎么还是0呢?
...全文
261
20
打赏
收藏
为啥@@error 总是0呢?
一个大存储过程,里面调用了小的过程 小过程catch块里面 RAISERROR( @error_message, @error_severity, 1) with seterror 我用vs调试的时候,@@error = 50000 正常。 但是跳到大的程序里面@@error = 0,奇怪阿,我raiseerror了怎么还是0呢?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
20 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
wwd252
2008-07-15
打赏
举报
回复
把代码贴出来啊
Garnett_KG
2008-07-15
打赏
举报
回复
@@ERROR 判断的是
上一条语句
执行是否成功,不是
上一个批次
lff642
2008-07-15
打赏
举报
回复
@@ERROR
返回最后执行的 Transact-SQL 语句的错误代码。
语法
@@ERROR
返回类型
integer
注释
当 Microsoft® SQL Server™ 完成 Transact-SQL 语句的执行时,如果语句执行成功,则 @@ERROR 设置为 0。若出现一个错误,则返回一条错误信息。@@ERROR 返回此错误信息代码,直到另一条 Transact-SQL 语句被执行。您可以在 sysmessages 系统表中查看与 @@ERROR 错误代码相关的文本信息。
由于 @@ERROR 在每一条语句执行后被清除并且重置,应在语句验证后立即检查它,或将其保存到一个局部变量中以备事后查看。
wgzaaa
2008-07-15
打赏
举报
回复
这个帖子不是结了吗,怎么还放这里让大家辛苦?
http://topic.csdn.net/u/20080714/11/4141947a-8583-4aa1-9993-a345f8d4d107.html
让你望见影子的墙
2008-07-15
打赏
举报
回复
[Quote=引用楼主 beyondjay 的帖子:]
一个大存储过程,里面调用了小的过程
小过程catch块里面
RAISERROR( @error_message, @error_severity, 1) with seterror
我用vs调试的时候,@@error = 50000
正常。
但是跳到大的程序里面@@error = 0,奇怪阿,我raiseerror了怎么还是0呢?
[/Quote]
可能是这样的:
在你的小过程里面发生了错误,当然会产生错误@@error=50000,但是你的程序里面有错误处理程序,使用catch把程序错误处理了,错误处理成功后,对与大存储过程来说是一个成功的执行过程,因为错误已经处理了,所以@@error=0
tianhuo_soft
2008-07-15
打赏
举报
回复
[Quote=引用 13 楼 pgy8288 的回复:]
路过
[/Quote]
ChinaJiaBing
2008-07-15
打赏
举报
回复
你设置的提示信息。。。。。。。。。。。。。。
ojuju10
2008-07-14
打赏
举报
回复
@@error=0 表示成功,否则就不等于0
中国风
2008-07-14
打赏
举报
回复
@@error--訊息的識別碼
參照:
select * from master..sysmessages
hery2002
2008-07-14
打赏
举报
回复
你把整个代码贴出来看看啦,
如果代码过长,
帖关键的 :)
beyondjay
2008-07-14
打赏
举报
回复
一个大存储过程,里面调用了小的过程
小过程catch块里面
RAISERROR( @error_message, @error_severity, 1) with seterror
我用vs调试的时候,@@error = 50000--小的存储过程里面的@error在raiserror之后是不等于0的
正常。
但是跳到大的程序里面@@error = 0,奇怪阿,我raiseerror了怎么还是0呢?
--但是跑到外面的时候@@error就变成0了阿
hery2002
2008-07-14
打赏
举报
回复
没懂意思~
pgy8288
2008-07-14
打赏
举报
回复
路过
hanjs
2008-07-14
打赏
举报
回复
路过,帮顶!
zoffor
2008-07-14
打赏
举报
回复
是不是error级别太低啊。
ps:乱说的
nzperfect
2008-07-14
打赏
举报
回复
看不懂
ojuju10
2008-07-14
打赏
举报
回复
@@error 作为系统的一个全局变量,不能够赋值的
rainlovesea
2008-07-14
打赏
举报
回复
我用vs调试的时候,@@error = 50000
这是什么意思,结果还是赋值
正宗老冉
2008-07-14
打赏
举报
回复
[Quote=引用 6 楼 utpcb 的回复:]
你打程序执行的是成功的酒是0
[/Quote]
utpcb
2008-07-14
打赏
举报
回复
你打程序执行的是成功的酒是0
cap_ffmpeg_impl.hpp
make #遇到下面错误: make[2]: *** [modules/highgui/CMakeFiles/opencv_highgui.dir/src/cap_ffmpeg.o]
Error
1 make[1]: *** [modules/highgui/CMakeFiles/opencv_highgui.dir/all]
Error
2 make: *** [all]
Error
2 解决办法: 通过查看make过程中的错误知道,问题出在OpenCV-2.3.0/modules/highgui/src/cap_ffmpeg_impl.hpp文件中, 参考 https://code.ros.org/trac/opencv/ticket/1020 中 ffmpeg_build.patch 和 ffmpeg_build_2.patch 对 cap_ffmpeg_impl.hpp文件中的出错变量进行替换, 附件是改好的cap_ffmpeg_impl.hpp,可直接替换同名原文件。 重新执行cmake 、 make步骤,此时成功编译不再出错。然后执行sudo make install命令安装。安装过程没有出问题。
@@
error
@@
error
是系统函数,当没有发生错误时返回0,如果发生错误时@@
error
<>0,并返回错误号,每个SQL语句执行完,@@
error
值都会变。 @@
error
只记录当前错误,如果存储过程执行多个操作,就要每次都判读@@
error
是否出现错误 @@
error
动态的标识最后一条SQL命令执行的结果,如果成功则为0,不成功则标识错误码 转载于:https://www.cnblogs....
存储过程中 IF @@
error
<>0 GOTO ErrHandle
存储过程中 IF @@
error
0 GOTO ErrHandle
SQLServer 使用 @@
ERROR
SQLServer 使用 @@
ERROR
原文:SQLServer 使用 @@
ERROR
使用 @@
ERROR
如果最后的 Transact-SQL 语句执行成功,则 @@
ERROR
系统函数返回 0;如果此语句产生错误,则 @@
ERROR
返回错误号。每一个 Transact-SQL 语句完成时,@@
ERROR
的值都会改变。 因为每个...
error
LNK2005: "void __cdecl fun(void)" (?fun@@YAXXZ) 已经在 file.obj 中定义----错误的原因分析
问题1:
error
LNK2005: "void __cdecl fun(void)" (?fun@@YAXXZ) 已经在 file.obj 中定义 遇到问题: file文件是cpp文件的时候,编译报错(
error
LNK2005: "void __cdecl fun(void)" (?fun@@YAXXZ) 已经在 file.obj 中定义;fatal
error
LNK1169: 找到一个或多个多重定义的符号) file文件是c文件的时候,编译成功。 原因: 我是用的是编译工具是Vis
MS-SQL Server
34,838
社区成员
254,632
社区内容
发帖
与我相关
我的任务
MS-SQL Server
MS-SQL Server相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章