首页 > 数据库 > SQL Server > 正文

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

2020-07-25 12:53:06
字体:
来源:转载
供稿:网友

下面的Trigger用于监控存储过程的更改。
 
创建监控表:
 

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

创建监控Trigger:

CREATE TRIGGER dbtAuditStoredProceduresON DATABASEFOR CREATE_PROCEDURE, ALTER_PROCEDURE, DROP_PROCEDUREAS 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);

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表