SQL Server Error: OLE DB error trace [OLE/DB Provider ‘SQLOLEDB’ IUnknown::QueryInterface returned 0x80004005: The provider did not give any information about the error.]

SUMMARY

You receive the following error trying to execute a query against a linked server:

Server: Msg 7399, Level 16, State 1, Line [Line Number]
OLE DB provider ‘SQLOLEDB’ reported an error. The provider did not give any information about the error.
OLE DB error trace [OLE/DB Provider ‘SQLOLEDB’ IUnknown::QueryInterface returned 0x80004005: The provider did not give any information about the error.]

Solution

Turn off the SQLOLEDB provider options

  • LevelZeroOnly
  • IndexAsAccessPath (not always required)
  1. In SQL Server 2000 Enterprise Manager, expand the server node, then the security node. Right click on the “Linked Servers” node. Select the “New Linked Server… ” option to add a new linked server.
  2. Complete the fields as follows:
    • Linked server: Type the logical name for the SQL Server that will be used in SQL queries.
    • Other data source, Provider name: Select Microsoft OLE DB Provider for SQL Server.
    • Product name: SQLOLEDB.
    • Data source: Network name of the SQL Server.
    • Provider string: Can be left empty.
    • Catalog: Database that will be connected to.
  3. Edit the Provider Options by clicking the “Provider Options…” button.

    • Uncheck “Level zero only”.
    • Depending on your specific scenario, optionally uncheck “Index as access path”.

    After completing the above tasks you can continue setting the properties for the new linked server as you would under normal circumstances.

Advertisements