sql-server – 使用SQL Server Profiler进行日志表访问

前端之家收集整理的这篇文章主要介绍了sql-server – 使用SQL Server Profiler进行日志表访问前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
有没有办法使用Profiler来确定查询是否正在访问表?

我看到一个名为Object:Opened的事件(表示何时访问了一个对象,例如SELECT,INSERT或DELETE语句)和Object:Closed,但这些似乎不起作用.

特别是,我使用Object:Opened和Object创建了一个简单的跟踪:没有过滤器关闭(标准的“应用程序名称不像’sql Profiler’”过滤器除外)并运行SELECT TOP 1 * FROM TableName,但没有报告任何事件.

那么,有没有办法使用Profiler来确定是否正在从中选择一个表?

解决方法

调查sql正在获取的锁可能有所帮助. Select语句通常会获取共享锁(LCKMS),因此您可以对此进行过滤.

在Profiler中查找Locks:Acquired事件. ObjectID将解析为您可以使用OBJECT_NAME(objectid)轻松查找的表.模式将告诉您正在获取的锁的类型共享锁是3.有关更多信息,请查看here.

原文链接:https://www.f2er.com/mssql/83088.html

猜你在找的MsSQL相关文章