<p>Is there a way to use Profiler to determine whether a table is being accessed by queries?</p>

<p>I saw an event named <code>Object:Opened</code> (Indicates when an object has been accessed, such as for SELECT, INSERT, or DELETE statements) and <code>Object:Closed</code>, but these do not seem to work.</p>

<p>In particular, I created a simple trace with both Object:Opened and Object:Closed with no filters (except the standard "Application Name not like 'SQL Profiler'" filter) and ran <code>SELECT TOP 1 * FROM TableName</code>, but no events were reported.</p>

<p>So, is there a way to use Profiler to determine if a table is being SELECTed from?</p>

I'm not seeing those in SQL Server 2005.
In my experience, I look at
```
SQL:StmtStarting
```
AND
```
SP:StmtStarting
```
- you can filter
```
TextData
```
on
```
%TABLE_NAME%
```
.  This will even catch things inside SPs when you use
```
SP:StmtStarting
```
.
It's not bulletproof, because it has to use the
```
LIKE
```
syntax, but it might get you what you are looking for.