欢迎来到福编程网,本站提供各种互联网专业知识!
您的位置:网站首页 > 数据库 > MsSql

SQL Server中使用Trigger监控存储过程更改脚本实例

发布时间:2015-07-08 作者:投稿junjie 来源:转载
这篇文章主要介绍了SQLServer中使用Trigger监控存储过程更改脚本实例,本文使用一个表来记录存储过程更改过程,需要的朋友可以参考下

下面的Trigger用于监控存储过程的更改。

创建监控表:

CREATE TABLE AuditStoredProcedures(
 DatabaseName sysname
, ObjectName sysname
, LoginName sysname
, ChangeDate datetime
, EventType sysname
, EventDataXml xml
);
 

创建监控Trigger:

CREATE TRIGGER dbtAuditStoredProcedures
ON DATABASE
FOR CREATE_PROCEDURE, ALTER_PROCEDURE, DROP_PROCEDURE
AS
 
DECLARE @eventdata XML;
SET @eventdata = EVENTDATA();
 
INSERT INTOAuditStoredProcedures(DatabaseName,ObjectName,LoginName,ChangeDate,EventType,EventDataXml)
VALUES (
 @eventdata.value('(/EVENT_INSTANCE/DatabaseName)[1]','sysname')
, @eventdata.value('(/EVENT_INSTANCE/ObjectName)[1]', 'sysname')
, @eventdata.value('(/EVENT_INSTANCE/LoginName)[1]', 'sysname')
, GETDATE()
, @eventdata.value('(/EVENT_INSTANCE/EventType)[1]', 'sysname')
, @eventdata
);

相关推荐