SQL Server EVENTDATA()函数来获取DDL 触发器信息
2022-11-12 09:48:28
内容摘要
这篇文章主要为大家详细介绍了SQL Server EVENTDATA()函数来获取DDL 触发器信息,具有一定的参考价值,可以用来参考一下。
对此感兴趣的朋友,看看idc笔记做的技术笔记!
代码如下
文章正文
这篇文章主要为大家详细介绍了SQL Server EVENTDATA()函数来获取DDL 触发器信息,具有一定的参考价值,可以用来参考一下。
对此感兴趣的朋友,看看idc笔记做的技术笔记!
代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | <code>-- Create a log table CREATE TABLE TriggerLog (LogInfo xml) -- Create a dummy table to delete later on CREATE TABLE TableToDelete (Id int PRIMARY KEY) -- 新建一个新表,作为删除实验表 INSERT INTO TableToDelete VALUES(1) GO -- 创建一个Drop Table 的 DDL CREATE TRIGGER StopTableDrop ON DATABASE AFTER DROP_TABLE AS DECLARE @EventData AS xml SET @EventData = EVENTDATA() -- 必须要在rollback之前截获DDL信息 ROLLBACK PRINT 'DROP TABLE attempt in database ' + DB_NAME() + '.' INSERT INTO TriggerLog VALUES(@EventData) </code> |
注:关于SQL Server EVENTDATA()函数来获取DDL 触发器信息的内容就先介绍到这里,更多相关文章的可以留意
代码注释