SQL Server触发器与视图的深入解析
1. 触发器概述
触发器是一种特殊的存储过程,它会在特定的DDL(数据定义语言)或DML(数据操作语言)事件发生时自动执行。主要有三种类型的触发器:DML触发器、DDL触发器和登录触发器。
1.1 DDL触发器中的事件数据获取
在DDL触发器中,可以通过EVENTDATA函数返回的XML文档来获取事件的相关信息。每个事件都有不同的XML模式,所有SQL Server模式的文档可在http://schemas.microsoft.com/sqlserver 查看。
例如,对于CREATE_TABLE、ALTER_TABLE或DROP_TABLE事件,可以使用以下查询来检索数据库、架构、对象和执行的命令:
SELECT EVENTDATA().value
('(/EVENT_INSTANCE/DatabaseName)[1]','nvarchar(max)'),
EVENTDATA().value
('(/EVENT_INSTANCE/SchemaName)[1]','nvarchar(max)'),
EVENTDATA().value
('(/EVENT_INSTANCE/ObjectName)[1]','nvarchar(max)'),
EVENTDATA().value
('(/EVENT_INSTANCE/TSQLCommand)[1]','nvarchar(max)')
下面是
超级会员免费看
订阅专栏 解锁全文
1403

被折叠的 条评论
为什么被折叠?



