Sql-server – Does the Binary Data column shown in SQL Profiler contain useful information

profilersql server

Many of the events that SQL Profiler captures include a Binary Data column. The documentation for these event classes merely repeats the fact that this column contains "Binary value dependent on the event class captured in the trace."

I'm particularly interested in the RPC:Starting and RPC:Completed events; I notice that the binary data for each event appears the same whenever the same query is executed, although the Starting and Completed events have different binary data. But other events also display information here that I would be interested in decoding. This assumes, of course, that the data would be even relevant or meaningful.

Is the content of these fields documented anywhere, and is it ever meaningful to a developer/administrator?

Best Answer

I know the BinaryData column is useful for a few event classes. However, if the event class describes the column as "Binary value dependent on the event class captured in the trace" I haven't found it to be particularly useful. I'm not aware of any meaningful use for the RPC:Starting and RPC:Completed events and I wasn't able to find any.

There are a few event classes where they column is useful though. For example, the degree of parallelism event class uses the BinaryData column to show how a plan is being executed (http://technet.microsoft.com/en-us/library/ms187943(v=sql.105).aspx).

The CursorImplicitConversion class uses it to tell you the resulting cursor type (http://technet.microsoft.com/en-us/library/ms180764(v=sql.105).aspx).

The ShowPlan event classes use the BinaryData column to store the XML data. There are a few others but on the whole it's not very useful.