快速理解 SQL Server 2000中的错误信息
时间:09-16
来源:赛迪网
点击:
Microsoft® SQL Server™ 2000 在遇到问题时,根据严重级别,将把 sysmessages系统表中的消息写入 SQL Server 错误日志和 Microsoft Windows® 2000 或 Microsoft Windows NT® 4.0 应用程序日志,或者将消息发送到客户端。
可以在遇到问题时由 SQL Server 返回错误信息,也可以使用 RAISERROR 语句手工生成错误信息。
RAISERROR 语句提供集中错误信息管理。RAISERROR 可以从 sysmessages 表检索现有条目,也可以使用硬编码(用户定义)消息。RAISERROR 返回用户定义的错误信息时,还设置系统变量记录所发生的错误。消息可以包括 C PRINTF 样式的格式字符串,该格式字符串可在运行时由 RAISERROR 指定的参数填充。这条消息在定义后就作为服务器错误信息发送回客户端。
无论是从 SQL Server 返回,还是通过 RAISERROR 语句返回,每条消息都包含:
◆唯一标识该错误信息的消息号。
◆表明问题类型的严重级别。
◆标识发出错误的来源的错误状态号(如果错误可以从多个位置发出)。
◆声明问题(有时还有可能的解决方法)的消息正文。
例如,如果访问的表不存在:
SELECT *
FROM bogus
发送到客户端的错误信息类似下面所示:
服务器:错误信息 208,级别 16,状态 1
对象名 'bogus' 无效。
查询 master 数据库中的 sysmessages 表可以查看 SQL Server 错误信息列表。
可以在遇到问题时由 SQL Server 返回错误信息,也可以使用 RAISERROR 语句手工生成错误信息。
RAISERROR 语句提供集中错误信息管理。RAISERROR 可以从 sysmessages 表检索现有条目,也可以使用硬编码(用户定义)消息。RAISERROR 返回用户定义的错误信息时,还设置系统变量记录所发生的错误。消息可以包括 C PRINTF 样式的格式字符串,该格式字符串可在运行时由 RAISERROR 指定的参数填充。这条消息在定义后就作为服务器错误信息发送回客户端。
无论是从 SQL Server 返回,还是通过 RAISERROR 语句返回,每条消息都包含:
◆唯一标识该错误信息的消息号。
◆表明问题类型的严重级别。
◆标识发出错误的来源的错误状态号(如果错误可以从多个位置发出)。
◆声明问题(有时还有可能的解决方法)的消息正文。
例如,如果访问的表不存在:
SELECT *
FROM bogus
发送到客户端的错误信息类似下面所示:
服务器:错误信息 208,级别 16,状态 1
对象名 'bogus' 无效。
查询 master 数据库中的 sysmessages 表可以查看 SQL Server 错误信息列表。
- 数据库系统设计全面介绍(上)(11-30)
- 数据库系统设计全面介绍(下)(11-30)
- 官方白皮书:达梦数据库的界面设计(11-30)
- 利用SQL Server数据库快照形成报表(01-01)
- 浅析SQL Server与Oracle区别(04-22)
- SQL Server块日志恢复(04-25)