4
votes

Where can I find the information with which SQL Server versions the standard ODBC driver named "SQL Server" (SQLSRV32.dll) is compatible ?

For sure it works with Microsoft SQL Server 2008 R2 because we are using them successfully.

But what about the following?

  • Microsoft SQL Server 2012
  • Microsoft SQL Server 2014
  • Microsoft SQL Server 2016
  • Microsoft SQL Server 2017

Unfortunately I could not find that information after hours using my favourite web search engine. On https://docs.microsoft.com/en-us/sql/connect/odbc/windows/microsoft-odbc-driver-for-sql-server-on-windows are descriptions of newer drivers which can be downloaded, but we don't have admin privileges to install one of them. We have to use the standard ODBC driver which is installed on Windows out of the box, because the application should run on customers desktop PCs.

Probably this information also depends on the version of the DLL. As an example let's take the version 10.00.15063.00, but it can vary, for the reason mentioned above. We do not exactly know which Windows versions the customers use. Can be [Win7, Win8, Win10] / [Home/Pro/Enterprise].

1
Why is this tagged Java? If you use Java you shouldn't be using the ODBC driver at all, you should use the Microsoft SQL Server JDBC driver.Mark Rotteveel
you are right, sorry. It's a legacy application which will be migrated to Java in the future, but is not yet. I removed the Java tag.Mayoares

1 Answers

3
votes

The "SQL Server" ODBC driver that ships with Windows is part of Microsoft/Windows Data Access Components (MDAC/WDAC) and is an operating system component nowadays. The specific driver version number shouldn't be a concern given that the interface is the same. This ODBC driver is deprecated and has not been enhanced since for many years. It is included with Windows only to support legacy applications and is unaware the new SQL data types and features introduced since the release of SQL 2005. It is not intended to be used for new development but nothing prevents you from using so.

Most Java applications use a JDBC driver for relational database access. You could use a modern JDBC driver and include it with your application. That will allow you to use newer SQL features.