今天在SSC上看到一篇文章,介绍用Logon Trigger实现类似mySQL那样控制客户端IP的方法 Blocking Users by IP
觉得挺好玩的,想继续深化一下,于是就开始研究Logon Trigger。
这个Logon Trigger好像是2008才开始有的,由于我的机器直接装的是2008R2,2008里到底有没有就不知道了。
简单的测试了一下,却发现一个问题(不知道是不是问题,反正在我的机器上是有问题的):
1、创建了一个For/After Logon Trigger
2、Trigger里的内容就是把 SYSTEM_USER、EventData()记录到一张表里
具体的代码如下:
1、用于记录SYSTEM_USER、EventData()的表(数据库DBADB是我自己用的)
2、创建After Logon Trigger
3、查看结果
SELECT * FROM DBADB.dbo.tbl_Trg_Log_EventData WHERE Trg_Name = 'Trg_Server_AfterLogon' ORDER BY ID DESC
问题出现了!
创建好Trigger后,New Query的时候,在表里会插入2条记录(有时会是5条记录)!
这些记录之间的间隔都非常短,如下图:
为什么呢?????
答案我也在寻找当中,如果你知道,请早点告诉我 :)
非常感谢~~~!!!~!~!~!~!~!