您好,我是小DAI,专注于数据库管理员相关的技术问答,请问有什么可以帮您?

RAISERROR 语句 [T-SQL]

允许发出用户定义的错误并向客户端发送消息。

快速链接:

转至参数

转至示例

转至用法

转至标准

转至权限

语法

RAISERROR  ] [, ]

参数

  • error-number 大于 17000 的五位整数。错误号存储在全局变量 <@@error> 中。

  • format-string如果未提供或者其为空,则使用错误号在系统表中查找错误消息。SAP ASE 从 SYSMESSAGES 表中获取的消息范围为 17000-19999。在 SAP IQ 中,此表为空视图,因此这个范围内的错误消息应该提供格式字符串。错误号大于或等于 20000 的消息从 SYS.SYSUSERMESSAGES 表中获取。 可以长达 255 个字节。它与 SAP ASE 中的内容等同。 对于可选参数列表中的参数,格式字符串可以包含占位符。这些占位符的形式为 %nn!,其中 nn 是介于 1 和 20 之间的整数。

    示例

  • 示例 1 引发错误 99999(该错误在用户定义的错误范围内)并向客户端发送消息: RAISERROR 99999 'Invalid entry for this column: %1!', @val

    用法

    参数之间没有逗号。逗号后的第一项解析为参数列表中的第一项。

    SAP IQ 不支持 SQL Server 或 SAP ASERAISERROR 语句所支持的扩展值。

    中间 RAISERROR 状态和代码信息在过程终止后会丢失。如果在返回时伴随 RAISERROR 发生了错误,则返回错误信息,而 RAISERROR 信息将丢失。应用程序可以通过在不同的执行点检查 @@error 全局变量来查询中间 RAISERROR 状态。

    标准

  • SQL - ISO/ANSI SQL 语法的 Transact-SQL 扩展。

  • SAP 数据库产品 - 受 SAP ASE 支持。

    权限

    必须连接到数据库。