sp_audit_write (Transact-SQL)
适用范围:SQL Server
将用户定义的审核事件添加到 USER_DEFINED_AUDIT_GROUP
。 如果未 USER_DEFINED_AUDIT_GROUP
启用, sp_audit_write
则忽略。
语法
sp_audit_write [ @user_defined_event_id = ] user_defined_event_id
[ , [ @succeeded = ] succeeded ]
[ , [ @user_defined_information = ] N'user_defined_information' ]
[ ; ]
参数
[ @user_defined_event_id = ] user_defined_event_id
由用户定义并在审核日志列中记录 user_defined_event_id
的参数。 @user_defined_event_id较小。
[ @succeeded = ] succeeded
用户为指示事件是否成功而传递的参数。 此值显示在 succeeded
审核日志的列中。 @succeeded位。
[ @user_defined_information = ] N'user_defined_information'
由用户定义并在审核日志的新 user_defined_event_id
列中记录的文本。 @user_defined_information为 nvarchar(4000)。
返回代码值
0
(成功)或 1
(失败)。
失败是由不正确的输入参数引起的,或者无法写入目标审核日志。
注解
USER_DEFINED_AUDIT_GROUP
将服务器审核规范或数据库审核规范添加到时,审核日志中将包含触发sp_audit_write
的事件。
权限
需要公共数据库角色的成员身份。
示例
A. 使用信息文本创建用户定义的审核事件
以下示例创建一个审核事件,其值0
为 <27
a0@user_defined_event_id
/>,并包含可选信息性文本。
EXEC sp_audit_write @user_defined_event_id = 27,
@succeeded = 0,
@user_defined_information = N'Access to a monitored object.';
B. 创建不带信息文本的用户定义审核事件
以下示例创建一@user_defined_event_id
个审核事件,其值为、27
@succeeded
值0
和不包含可选信息性文本或可选参数名称。
EXEC sp_audit_write 27, 0;