A. Microsoft don't publish any information on the TDS protocol unfortunately, so your choices are :-
1. Network trace and parse/reverse engineer the packets yourself. To help with this the Network Monitor 2.0 tool that comes with SMicrosoft 2.0 has a TDS parser with it, so this formats packets in the trace for you.
2. Several people have done such reverse engineering for the portions of TDS they needed and have reported it's not that difficult. Once such is the FreeTDS project that is reverse engineering the TDS specification and is currently implementing CTLIB, DBLIB, and JDBC interfaces for TDS. ODBC and Perl DBD drivers are planned. The FreeTDS JDBC driver is a type 4 driver and should work on any JVM. The CTLIB and DBLIB interfaces are known to compile under AIX, Linux, and FreeBSD without any problems. More info from http://sunsite.unc.edu/freetds/ . The mailing list archive can be viewed at http://franklin.oit.unc.edu/cgi-bin/lyris.pl?enter=freetds. Source-code can be downloaded from ftp://freetds.internetcds.com/pub/freetds_dbd/. Or http://metalab.unc.edu/freetds/download.html