• I had similar issues on Windows 7 64bit OS; Lot of these issues will disappear if you are on 32 bit OS.

    Take a look at this thread:

    http://social.msdn.microsoft.com/Forums/en-US/sqldataaccess/thread/8514b4bb-945a-423b-98fe-a4ec4d7366ea

    Basic things:

    (1) The Microsoft.ACE.OLEDB.12.0 provider from "2007 Office System Driver: Data Connectivity Components is 32 bit". It only works on 32 bit SSMS. So I had to install 32 bit server instance and 32 bit tools to even try this out. It didn't work on the 64 bit version.

    2. You will need to configure to allow "Ad Hoc Distributed Queries" for the sql server instance.

    3. As mentioned in the above link, run these two t-sql stmts to create necessary registry entries( copied from above link). Without these you get the error could not fetch a row ...But surprisingly, the MSDASQL provider worked without running the following.

    USE [master]

    GO

    EXEC master . dbo. sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0' , N'AllowInProcess' , 1

    GO

    EXEC master . dbo. sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0' , N'DynamicParameters' , 1

    GO

    Hope this helps.