This is a discussion on Re: Looking for articles on building drivers... within the MS SQL ODBC forums, part of the Microsoft SQL Server category; --> DataDirect Technologies developed and continues to maintain the Microsoft JDBC Driver for SQL Server. It was not reverse engineered. ...
| |||||||
| FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
| ||||
| DataDirect Technologies developed and continues to maintain the Microsoft JDBC Driver for SQL Server. It was not reverse engineered. Microsoft and DataDirect Technologies have a long term business relationship that includes porting the SQL Server ODBC driver to non-Windows platforms as well as the work on the JDBC driver. >-----Original Message----- >Writing something like an ODBC driver for SQL Server involves two sides: the >ODBC specification itself (which applies to all data sources) and SQL Server >access. For the ODBC and OLE DB specifications, see >http://msdn.microsoft.com/library/en- us/mdacsdk/htm/mdacstartpage1.asp. For >the JDBC specification, see http://java.sun.com/products/jdbc/. > >The SQL Server side is a bit tougher, because Microsoft does not document >everything you would need to know to write a fully functional, >high-performance driver which talks directly to a client Net-Library or >communicates across the wire using TDS. Luckily, there are no applications >which use every single little feature of SQL Server, so most third-party >drivers can get away with implementing a subset of functionality. Some >drivers have bigger/smaller subsets than others and perform better/worse >than others because their authors are more/less successful at >reverse-engineering what Microsoft does not document. Microsoft's JDBC >driver was written by DataDirect Technologies, so it was originally based on >reverse-engineering, too. Even though Microsoft is now maintaining the code >and can shore up the SQL Server side of the JDBC driver, the JDBC >specification (controlled by Sun) is not as well matched to SQL Server as >Microsoft's own ODBC, OLE DB, and .NET Data Provider specifications. > >As long as you're just wanted to get an understanding of the basics, there >is some informal/incomplete/outdated material you can look at. If you search >Books Online for "Tabular Data Stream" you will find a few references to >TDS, located in topics which will give you a little idea of what you're >getting into. > >You can download Sybase's documentation for their current flavor of TDS from >http://crm.sybase.com/sybase/www/ESD...c_download.jsp .. Microsoft's >current flavor of TDS has differences, primarily in areas like Unicode and >data types which were added after Microsoft's split from Sybase in 1994, but >Microsoft's TDS 8.0 still looks conceptually a lot like Sybase TDS 4.2. >Since Microsoft does not provide any TDS 8.0 documentation similar in detail >to Sybase's TDS 5.0 documentation, Sybase's document is as close as you can >come to finding anything formal. > >For sample source code, you can check out the various open source efforts at >creating a DB-Lib equivalent, ODBC driver, JDBC driver, and .NET Data >Provider for SQL Server: >http://www.freetds.org/userguide/ >http://jtds.sourceforge.net/ >http://www.go-mono.com/sqlclient.html > > >"Henry Stock" <hstock@onproject.com> wrote in message >news:O7ZqPhxGDHA.3692@tk2msftngp13.phx.gbl... >> issue. But it has made me interested in what it takes to build an >interface >> driver such as an ODBC or a JDBC driver. I do not claim to be an expert >> programmer, but I want to learn what I can about the process. I want to >> find information on the SQL Server API's that drivers access, how they are >> accessed, and perhaps find examples of code of a sample driver. I have an > > >. > |