mcintyre321
mcintyre321

Reputation: 13306

How does a SqlCommand communicate with Sql Server, in detail?

I am interested in monitoring and transforming SQL commands and query results using a proxy for port 1433, but I don't know much about how SQL works over the wire. Where can I find some info or documentation on this, for SQL Server, and more generally for other SQL products?

Upvotes: 2

Views: 101

Answers (1)

Remus Rusanu
Remus Rusanu

Reputation: 294387

Any client, including SqlClient, communicates with the SQL Server using the Tabular Data Stream protocol (aka. TDS). Since this protocol falls under EU Microsoft competition case it is fully documented. See Tabular Data Stream Protocol for a complete description. FreeTDS is an alternative GNU/LGPL implementation.

Note that TDS can be implemented atop different transports, like named pipes, TCP or shared memory. The protocol is the same on all these transports.

Some products under the SQL Server 'family' are not considered do fall under the EU ruling and are undocumented.

Upvotes: 4

Related Questions