0

我的数据库中有一堆存储过程,其中一些 SP 包括 RAISERROR。SQL Server 是否在某处记录这些异常(用户定义/系统)?如果是,是否可以查询这些消息和错误号?

4

1 回答 1

0

这些不会自动记录,但您可以使用xp_logevent手动将所有错误添加到错误日志中。

这是来自 MSDN 的示例

DECLARE @@TABNAME varchar(30)
DECLARE @@USERNAME varchar(30)
DECLARE @@MESSAGE varchar(255)
SET @@TABNAME = 'customers'
SET @@USERNAME = USER_NAME()
SELECT @@MESSAGE = 'The table ' + @@TABNAME + ' is not owned by the user 
   ' + @@USERNAME + '.'

USE master
EXEC xp_logevent 60000, @@MESSAGE, informational

您需要修改所有存储过程,这可能是一个缺点,但它会

于 2013-09-19T09:41:32.360 回答