This is not a question, but this post may be useful for community because I could not find the answer on the Internet.
Tested on
SQL Server is running under domain account that is not admin of local machine. SQL Server connection authentication is Windows.
The issue is:
when creating and using a linked server or adhoc querying using this provider, you may receive errors like these:
OLE DB provider "MSDASQL" for linked server "xxx" returned message "[Microsoft][ODBC Driver Manager] Driver's SQLSetConnectAttr failed"
OLE DB provider "MSDASQL" for linked server "xxx" returned message "[Microsoft][ODBC dBASE Driver] Your network access was interrupted. To continue, close the database, and then open it again.
Cannot initialize the data source object of OLE DB provider "MSDASQL" for linked server "xxx"
Could not find installable ISAM
OLE DB provider "MSDASQL" for linked server "xxx" returned message "[Microsoft][ODBC dBASE Driver]General error Unable to open registry key Temporary (volatile) Ace DSN for process 0x16f4 Thread 0x2728 DBC 0x1ce64ae8 Xbase'
The reason is that the provider creates a temporary file in SQL Server's domain account's temporary folder, using user connect's credentials. Ordinary users does not have such permissions.
To install the OLE DB Driver for SQL Server, you need the msoledbsql. msi installer. Run the installer and make your preferred selections. The OLE DB Driver for SQL Server can be installed side-by-side with earlier versions of Microsoft OLE DB providers.
12.0' provider is not registered on the local machine." message if you try to connect to Office data like Excel or Access or SQL Server via OLEDB. That's because no 64-Bit MDAC driver is installed by default.
The solution is
grant "Modify" permission to sql server users on Sql Server's domain account's temporary folder.
This folder ordinarily is
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With