The Microsoft JDBC driver is failing to connect to a SQL Server 2012 Express database via TCP/IP, but the jTDS driver is succeeding against the exact same database.
See forum post http://social.msdn.microsoft.com/Forums/en-US/sqldataaccess/thread/0d7b1129-7efc-427b-9115-303cab0315c1 for discussion. For your convenience, here's a copy as well:
This is weird. I'm on a Mac OS X 10.7.5 64-bit host running VirtualBox 4.2.6. I've got a Windows 7 SP1 guest (64-bit) with bridged networking running Microsoft SQL Server Express 2012. I configured SQL Server to use TCP/IP on port 1433, not dynamic ports (setting is blank, not 0). The Windows 7 guest has IPv4 address 192.168.99.132 and Windows Firewall is turned off.
I downloaded the Microsoft SQL Server 2012 JDBC driver (sqljdbc4.jar) along with Squirrel SQL client 3.4.0 for both Windows and Mac. When I run Squirrel on the Windows 7 guest OS itself, I can connect to SQL Server just fine via the Microsoft JDBC driver using the machine names of either "winny", "localhost", or "192.168.99.132" (JDBC URLs like jdbc:sqlserver://winny\SQLEXPRESS:1433;databaseName=vha). However, when I try to connect to SQL Server from Squirrel on the Mac via the IP address 192.168.9.132 (can't resolve "winny"), I get an exception (see stack trace below).
Here's the weird part. If, from the Mac host, I use the jTDS SQL Server driver (version 1.2.7 because I'm using JDK6, so can't use jTDS 1.3.0 -- that version is JDK7 only), I connect right away with both of the JDBC URLs jdbc:jtds:sqlserver://192.168.99.132:1433/vha;instance=SQLEXPRESS or jdbc:jtds:sqlserver://192.168.99.132:1433/vha.
Any ideas why the Microsoft driver fails but jTDS succeeds from a remote host? And yes, I've tried the Microsoft URL with and without the instance name.
Java version on the Mac host is:
java version "1.6.0_37"
Java(TM) SE Runtime Environment (build 1.6.0_37-b06-434-11M3909)
Java HotSpot(TM) 64-Bit Server VM (build 20.12-b01-434, mixed mode)
Java version on the Windows 7 guest is:
java version "1.6.0_35"
Java(TM) SE Runtime Environment (build 1.6.0_35-b10)
Java HotSpot(TM) 64-Bit Server VM (build 20.10-b01, mixed mode)
Stack trace when connecting from Mac host to Windows 7 guest is in "Actual Results" of this bug report.