sp_audit_write (Transact-SQL)

適用対象:SQL Server

ユーザー定義の監査イベントを追加します USER_DEFINED_AUDIT_GROUP。 有効になっていない場合 USER_DEFINED_AUDIT_GROUPsp_audit_write 無視されます。

Transact-SQL 構文表記規則

構文

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 = ] 成功

イベントが成功したかどうかを示すためにユーザーによって渡されるパラメーター。 この値は、 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. 情報テキストを使用してユーザー定義の監査イベントを作成する

次の例では、値 、値 27、および省略可能な@user_defined_event_id情報テキストを@succeeded0含む監査イベントを作成します。

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;