Detangling the New Microsoft SQL Server ODBC and OLEDB Drivers

Detangling the New Microsoft SQL Server ODBC and OLEDB Drivers Some of you may already know that Microsoft backtracked on their planned deprecation of OLEDB and provided a new OLEDB driver. However, it can be a head-scratcher to figure what you should be using. When we were using SQL Server Native Client, it was pretty easy — the Native Client had both OLEDB and ODBC shipped in a single DLL file, making for easy installation. All you had to make sure you were using the right version of Native Client. With SQL Server now available on Linux, it no longer makes sense to distribute Native Client, since Linux in general don’t support OLEDB, which is mainly a Windows-only technology used mainly by Microsoft products. For that reason, Microsoft has not opted to combine both ODBC and OLEDB into a single DLL. If your application contains VBA code that uses both DAO and ADO, then you would need to install two different providers to get the latest feature and supports for both ODBC and OLEDB respectively. The naming convention can be a bit confusing because many people will loosely refer to various drivers as simply just “ODBC driver” or “OLEDB provider”. So let’s get the names straight. We’ll start with identifying the deprecated versions and then look at the current versions. Deprecated Versions By default, all versions of Windows come with two SQL Server data access client libraries pre-installed: Microsoft OLE DB Provider for SQL Server (also known as SQLOLEDB) Microsoft SQL Server ODBC Driver (also known as SQLODBC) It is very important to note that those are DEPRECATED. Those are targeting SQL Server 2000 and lack new features introduced since. Windows will not ship any new drivers or update those via its Windows Update. Going forward, you, the application developer, … Continue reading Detangling the New Microsoft SQL Server ODBC and OLEDB Drivers