基本用法

raiserror(msg,severity,state)

一、msg
错误信息。
二、severity
错误信息的级别,我们可以指定 0 到 18 之间的严重级别。
只有 sysadmin 固定服务器角色成员或具有 ALTER TRACE 权限的用户才能指定 19 到 25 之间的严重级别。若要使用 19 到 25 之间的严重级别,必须选择 WITH LOG 选项。

注意,如果错误级别在20~25之间,那么数据库会认为这个错误是致命,那么数据库会将该错误记录到错误日志和应用程序日志后终止数据库的连接。任何小于 0 的严重级别被认为等于0。大于 25 的严重级别被认为等于25。

三、state

这个参数是可以是1~127之间任意整数,可以用来标识错误的发生位置,如果一段代码的多个位置都会发生同样的错误,那么就可以将这个参数设置为不同的值,用来标识是那个位置发生错误了。
示例:
在这里插入图片描述

使用代替符

raiserror(N'错误信息,%s环节异常',16,1,N'订单处理') 

在这里插入图片描述
1,%d或%i代表有符号整数
2,%u代表无符号整数
3,%o代表无符号八进制数
4,%s代表字符串
5,%x或%X代表 无符号十六进制数

使用sys.messages

 raiserror(50001,16,1,N'1',N'2',N'3')

使用sys.messages中的自定义错误信息的错误信息,可以包含代替符。
自定义错误信息可以使用系统存储过程sp_addmessage添加到sys.messages中,注意, 用户定义错误消息的错误号应当大于 50000。

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐