Sql 自定义错误信息处理 你那个是系统错误 呀,eg:select convert(int,'2q')----> isnumeric() 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 SQL2000没有try...catch这样的高级异常处理功能,所以只能使用@@error来判断是否发生了异常.SQL2000中有些错误是允许使用@@error来获得的,有些错误是无法使用@@error获得的,因为这样的错误发生时会中止执行,无法运行后面的@@error语句,使得@@error语句形同虚设,所以这样的错误发生时是无法显示自定义信息的,SQLSERVER已经自作主张了.为了弥补这一缺陷,通常是在客户端应用程序中使用try...catch来捕获SQL执行中不能使用@@error检测的异常. 还有,如果楼主真的要在SQL2000中检测错误,应该将@@error放在要检测的语句之后,例如本例中: select convert(int,'2q')--虚拟一个错误 set @ErrorNumber = '1001' set @ErrorInfo = '数据转换成功!' if @@error<>0应该为: select convert(int,'2q')--虚拟一个错误 if @@error<>0 /*@@error只检测上一个执行语句是否有错*/ 请教update 语句 存储过程的where 求统计sql语句---在线等---100分 一个group by 的问题 高手帮助.............. SQL排序显示问题 AIX 系统 连接 SQLSERVER 方案 简单问题 SQL Server 将终止。发生了严重的异常 c0000005 SQL 服务器如何维护? SQL2000中行列转换问题 MSSQL安全问题!
select convert(int,'2q')--虚拟一个错误
set @ErrorNumber = '1001'
set @ErrorInfo = '数据转换成功!'
if @@error<>0
应该为:
select convert(int,'2q')--虚拟一个错误
if @@error<>0 /*@@error只检测上一个执行语句是否有错*/