Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Why doesn't Microsoft support OLE DB connections to SQL Azure?

At the MSDN website it says, "Connecting to SQL Azure by using OLE DB is not supported."

There are other places on the web where folks report that it works fine for them after tweaking the server name in the connection string, such as here and here. Even SQL Server's Analysis Services uses OLE DB to connect to SQL Azure!

I develop a native/unmanaged application in Delphi that connects to SQL Server using ADO through the OLE DB provider for SQL Server. I'm considering adding SQL Azure support. It would be really helpful if I could reuse the majority of my code without not too much change. I probably wouldn't consider going this direction otherwise.

It would be helpful if Microsoft were more clear on why "OLE DB is not supported". If there are certain limitations within the use of OLE DB, what are they? Maybe I can work around them, or maybe it wouldn't affect me.

Microsoft also mentions that ODBC is supported. So could I use the "OLE DB provider to ODBC" and connect this way? Or is any combination that includes OLE DB "not supported"?

like image 624
Troy Avatar asked Jun 21 '10 15:06

Troy


People also ask

How do I connect to OLE DB?

In the Solution Explorer pane, right-click on Connection Managers and select New Connection Manager. In the Add SSIS Connection Manager dialog, select OLEDB, then select Add. In the Configure OLE DB Connection Manager dialog box, select New. For Server name, enter localhost.

How does a premise SQL database connect to Azure?

Unfortunately, you cannot directly connect on-premise database to Azure Synapse notebooks. The best way to work with this is to pull the data into Azure Data Lake store, and then run your notebook on the storage account and then write it back to your on-prem servers.

What is OLE DB provider for SQL Server?

The Microsoft OLE DB Provider is an SQL tool that enables developers to write code that provides an application with ADO access to an SQL database. The OLE DB Provider is not installed by default when SQL Server is installed.

What is Microsoft OLE DB?

OLE DB (Object Linking and Embedding, Database, sometimes written as OLEDB or OLE-DB), an API designed by Microsoft, allows accessing data from a variety of sources in a uniform manner. The API provides a set of interfaces implemented using the Component Object Model (COM); it is otherwise unrelated to OLE.


1 Answers

You can use it, however it has not been thoroughly tested for all cases. Essentially, it should work for most things, but there might be a few edge cases where it won't work. Until we document those cases, it remains unsupported. That being said, if you were to use and run into errors, we would love to know about it and prioritize that to be fixed.

like image 73
dunnry Avatar answered Nov 15 '22 01:11

dunnry