在MS SQL Server中,除了我们常用的企业管理器和查询分析器之外,还有一个非常有用的工具——事件探查器。由于这两天,我需要知道一个ASP.NET程序对某个数据库的哪些表进行了哪些操作,所以才发现了这个工具的好处!
事件探查器可以跟踪数据库的你在某一时间内的每一个操作,比如你在查询分析器中执行一句SQL语句,或是你的程序调用一个存储过程等等。它都会立即捕捉到这个操作,并把这个操作的细节记录和显示出来。
使用事件探查器,我建议按下面的步骤来进行:
1. 点击新建一个跟踪。
2. 选择你要跟踪的Server。
3. 在“跟踪属性”的“常规”标签中填写一个跟踪名,其它的建议默认。
4. 在“事件”标签中,选择如下的事件类:
1) TSQL SQL:BatchCompleted, SQL:StmtCompleted
2) 安全审核 Audit Login, Audit Logout
3) 存储过程 RPC:Completed, SP:Completed, SP:StmtCompleted
4) 会话 ExistingConnection
5) 事务 DTCTransaction, SQLTransaction
5. 在“数据列”标签中,选择如下的数据:EventClass, HostName, EndTime, TextData, ApplicationName, NTUserName, LoginName, SPID, StartTime
6. 按“运行”或是“确定”开始跟踪。
跟踪的数据会在一个DataGrid里面显示出来,而且信息是实时的。建议查看名为“SQL:StmtCompleted”的
EventClass,可以看到刚才执行的SQL语句。
上面的步骤只是给你一个方便的上手,到底选择什么数据查看可以自己根据需要来调。