JDBC Treiber für den Microsoft SQL Server
Mit dem Microsoft SQL Server bin ich sehr zufrieden. Er ist ziemlich intelligent was das Selbst-Tuning angeht, gerade in einem Umfeld in dem kein Vollzeit-DBA zur Verfügung steht. Im Vergleich zu Oracle Datenbanken ist die Lernkurve deutlich geringer, Entwickler sind produktiver. Jedoch war schon immer eine Schwäche des Produktes die Unterstützung von Java (also der JDBC Treiber): der Microsoft JDBC Treiber für den SQL Server ist nur eingeschränkt frei verwendbar, die neusten Feature und Performance Verbesserungen finden sich grundsätzlich nur in Beta Versionen.
Dieses Problem haben auch einige kommerzielle Anbieter von JDBC Treibern erkannt (z.B. i-net Merlia oder JNetDirect). Wir haben in unseren Produkten lange Zeit den JSQLConnect Treiber von JNetDirect eingesetzt. Jedoch ist es für einen ISV schwer für einfache Infrastruktur Komponenten eine Beziehung mit einem Lieferanten aufrecht zu erhalten, die neben den Lizenzkosten auch Einschränkungen bei der Installation und Verteilung macht. Deswegen hat der Ablauf unseres Lizenzkontingentes und auch dazu bewogen uns nach Alternativen umzusehen.
FreeTDS stand bei uns unter Beobachtung, war aber nicht befridigend. Es ist eine Open Source Implementierung des Tabular Data Stream Protokolls, das sowohl von Sybase als auch Microsoft für die Datenbank Produkte eingesetzt wird. Erst seit der JDBC Type-4 Treiber in einem eigenen Projekt weiterentwickelt wurde, hat er sich aber als Alternative herausgestellt. jTDS ist seitdem ohne Zweifel einer der schnellste und stabilsten JDBC Treiber für den MS SQL Server, der noch dazu als Open Source (LGPL) erhältlich ist, und alle Features unterstützt die wir bisher in unseren J2EE Anwendungen (Tomcat und JBoss) benötigt haben.