SQL Server Bids Farewell to OLE DB After Denali
Denali will be the final edition of SQL Server to support OLE DB, according to the Microsoft SQLCLi Team blog. Since SQL Server Denali will be supported for seven years, that is also the effective lifetime of OLE DB support in the product.
The reason for this change is that Microsoft considers ODBC to be the industry standard:
[The] Cloud is universal and in order to support all client applications connecting from any platform to the cloud, Microsoft has been fully aligned with ODBC on SQL Azure, as ODBC is the only set of APIs that are available on all platforms including non-Windows platforms. From our surveys, cross-platform support is one of the main reasons indicated by our partners for aligning their applications with ODBC.
For some time, Microsoft had promoted OLE DB as a better alternative for relational data access, so this could appear to some as backpedaling. According to Amina Saify, Lead Program Manager at Microsoft, this isn’t the case:
OLE DB was introduced primarily to provide uniform data access to non-relational data as well as relational data. But it is a Microsoft proprietary technology that worked only on Microsoft platforms. When it comes to uniform data access to SQL Server from different platforms, ODBC has always been a better choice and that was consistently quoted by all of our customers in various surveys, SDRs and forums.
This deprecation only applies to OLE DB in SQL Server itself; it may continue to be used in other implementations. Microsoft notes that ADO.NET (which can run on top of OLE DB) will still be supported, but that it will need to be updated to a non-OLE DB provider. SQL Server features currently using OLE DB, such as Analysis Services, Integration Services, and Linked Server will be updated to use ODBC instead.
Microsoft has provided a document explaining how to migrate applications from OLE DB to ODBC. Will you be affected by this change? Please let us know in the comments.