SQL Server 2008 feature support survey

Since the release of SQL Server 2008, we have heard from customers looking for a JDBC driver that supports SQL Server 2008.  I would like to use this post to ask you, our customers, which features of SQL Server 2008 do you need supported through the JDBC driver.  We want to make sure we are…


Working with SQL Server 2008 Filestream using v1.2 JDBC driver

In the previous post “Working with SQL Server 2008 Date/Time Data Types using v1.2 JDBC driver”,I talked about how the current JDBC driver can interop with the new Date/Time/DateTime2/DatetimeOffset data types.  This time around, I will describe how to interop with SQL Server 2008 Filestream. Please refer to “SQL Server 2008 Books Online” for detailed…


Working with SQL Server 2008 Date/Time Data Types using v1.2 JDBC driver

Since SQL Server 2008 release over the summer, people have been asking, “So, does the existing JDBC driver work with SQL Server 2008?” or “When will there be a SQL Server 2008 JDBC driver?”. There are many things to consider with a general questions like these.  What features of SQL Server 2008 are you truly…


The driver could not establish a secure connection to SQL Server by using Secure Sockets Layer (SSL) encryption.

What is SSL and why is my JDBC driver using it? The v1.2 JDBC driver uses SSL (Secure Sockets Layer) to encrypt connections to SQL Server for improved security.  Where it can, the v1.2 driver ALWAYS uses SSL to encrypt the login to SQL Server.  For integrated auth connections, SSL provides an added layer of…


Why doesn’t executeUpdate() give me the exception I expected?

If you are using executeUpdate() to execute a query or stored procedure containing multiple SQL statements, the problem may just be that the error you’re expecting wasn’t the first result returned by the query.  Consider a case where you use executeUpdate() to call a stored procedure containing multiple SQL statements, and the first result is an…


SQLServerException: The statement did not return a result set

Have you ever encountered this exception from executeQuery()? If so, chances are good that your query actually did return a result set (we’ll be addressing the error message text…), but it wasn’t the first result.  Look at your query or stored procedure.  Does it contain multiple SQL statements?  Maybe it includes DDL and DML to…


Use execute() and getMoreResults() methods for those pesky complex SQL queries

Per JDBC spec, the Statement.executeUpdate() and Statement.executeQuery() methods are to be used only with queries that produce a single update count or result set, respectively.  If you need to execute multiple SQL statements in a single query, perhaps through a stored procedure call, then you should use Statement.execute() to execute the query and Statement.getMoreResults() to process all of the results.  However,…


Microsoft Connect

If you have a specific feedback about the Microsoft SQL Server JDBC Driver, please visit the Microsoft Connect. This web site allows you to search for driver issues submitted by customers, and it allows you to submit your own. Selcin Turkarslan, SQL Server


SQL Server JDBC driver v2.0 beta is now available

We are proud to announce the availability of our beta v2.0 driver with support for JDBC 4.0 National Character Set JDBC data types and API methods among others.  We have also enhanced our built-in tracing leveraging the Java logger utility by adding method entry and exit traces and better differentiation between the logger levels. The…


java.lang.SecurityException: class "com.microsoft.sqlserver.jdbc.SQLServerConnection"’s signer information does not match signer information of other classes in the same package

We have heard from customers using WebSphere 6.0 and trying to use the v1.2 JDBC driver that they are encountering the above exception.  This problem is primarily due to a name mismatch between our JDBC driver and another vendor’s jdbc driver.  While the v1.2 JDBC driver is supported by IBM WebSphere 6.1, it is not…