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 は smallint です。
[ @succeeded = ] ucceededed
イベントが成功したかどうかを示すためにユーザーによって渡されるパラメーター。 この値は、監査ログの 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
によってトリガーされるイベントが監査ログに含まれます。
アクセス許可
public データベース ロールのメンバーシップが必要です。
例
A. 情報テキストを使用してユーザー定義の監査イベントを作成する
次の例では、27
の@user_defined_event_id
値、0
の@succeeded
値、およびオプションの情報テキストを含む監査イベントを作成します。
EXEC sp_audit_write @user_defined_event_id = 27,
@succeeded = 0,
@user_defined_information = N'Access to a monitored object.';
B. 情報テキストを含まないユーザー定義の監査イベントを作成する
次の例では、27
の@user_defined_event_id
値、0
の@succeeded
値を使用して監査イベントを作成します。省略可能な情報テキストや省略可能なパラメーター名は含まれません。
EXEC sp_audit_write 27, 0;