Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to see SQL query in SQL profiler?

When I issue an update query or another Data Manipulation Language (DML) query that changes the data in the database, using Entity Framework 4, how do I see the query sent to the SQL Server?

Let's say I do something like:

someEntityObjectInstance.SomeProperty = newValue;
context.SaveChanges();

In this case, there's no ObjectQuery to do a ToTraceString() against, so I can't really see what's going on under the covers. I believe there's some Microsoft SQL Server tool like the profiler or something that will help me see the query.

Also, some Intellitrace in VS 2010 Ultimate does the same thing, I think?

Can you please teach me how to use the SQL 2005 Profiler, if there's any such thing?

Update

I am looking at a trace in SQL Server 2005 Profiler now but when I issue a context.DeleteObject() call or when I update an object and call context.SaveChanges(), I do not see the UPDATE or DELETE queries in the profiler. I only see wierd SELECT queries.

like image 370
Water Cooler v2 Avatar asked Nov 07 '10 16:11

Water Cooler v2


People also ask

How can I see the LINQ query in SQL Profiler?

Now, let's run the Application and run the trace in SQL Server Profiler. Click on Get Data button, the data will be populated on the page. Go to SQL Server Profiler and stop the trace, where you will see T-SQL statement of our stored procedure, as shown below. Notice that GetEmployees stored procedure is executed.


1 Answers

There are easier ways, if all you want is see the sql queries as they hit the DB.

Here are two very light-weight Sql profilers that can do the job for various SqlServer flavors, including LocalDb - "worked on my machine (TM)"

ExpressProfiler

By far the easiest to use one (and also the most bare-bones-show-me-the-SQL-statements-kthxbye) is ExpressProfiler on CodePlex.

Download tiny ZIP, wonder if you really got the whole file (you did), run EXE inside, BAM!

enter image description here

And the whole program is a single 126 KB EXE ! Now that's lightweight!

AnjLab Sql Profiler

The other one is the one from DataWizard, which used to be free (apparently prices now start at $5).

Somebody managed to save a snapshot on GitHub (including xcopy-installable binaries) when it was open-source.

The executable presents itself as "AnjLab Sql Profiler" and allows some filtering of the displayed events - but this strength is also its weakness, as there are sooo many event types that can be enabled/disabled. If everything is selected, the output is overwhelmingly verbose.

A saner output can be obtain by only selecting specific events.

enter image description here

Here are the events I have selected in order to get the above output:

enter image description here

like image 157
Cristian Diaconescu Avatar answered Nov 15 '22 22:11

Cristian Diaconescu