The 'Microsoft.Ace.OLEDB.12.0' Provider Is Not Registered on the Local Machine

If you have used SSIS to move data from something like Access or more commonly Excel, it is a good possibility you have seen this error at some point:

Error: The ‘Microsoft.Ace.OLEDB.12.0‘ provider is not registered on the local machine.

The reason this error shows up is because the proper components are not present that are required to move data from Office files (I’m looking at you Access and Excel). If you do development on a laptop or desktop then there is a very good chance that Office is installed on the machine and this error will likely never present itself.  However, when the package is run or developed on a server, where Office is generally not installed and shouldn’t be, the proper components for Access and Excel interaction do not exist.

The solution is simply installing the components required from the Microsoft Access Database Engine available here (http://www.microsoft.com/download/en/details.aspx?id=13255) at the time of this post. There is a 32 and 64 bit download so be sure to match that to the machine that has the error. Despite the name of the download it actually works for Access AND Excel. A note if you still have issues after installing the components here: The provider portion of the connection string should read Microsoft.ACE.OLEDB.12.0 and if connection to Excel the extended property of Excel 14.0 may need to be added.

UPDATE: A little more information on some scenarios that some people have run across. The machine in question was a 64-bit OS with 64-bit office 2010 installed. So the above components are irrelevant in that case as they are already installed with office. The error was still showing up. The fix is to download and install the 2007 version of the Access Database Engine available here http://www.microsoft.com/en-us/download/details.aspx?id=23734. I haven’t tested to see if just installing the 2007 components is the best option, but for now it seems that you should go ahead and grab that download and get that version of the engine installed.

Bradley Schacht

Bradley Schacht is a Data Platform Solution Architect on the state and local government team with Microsoft based in Jacksonville, FL. He has co-authored 3 SQL Server books including "SQL Server 2014 Professional Administration". As a former consultant and trainer, he uses his experience on many parts of the Microsoft BI and data platform to help customers deliver the best possible solutions. Bradley frequently presents at community events around the country. He is a contributor to sites such as SQLServerCentral.com and an active member of the Jacksonville SQL Server User Group (JSSUG).

You may also like...

5 Responses

  1. Lukasz says:

    It works for me 😀 thanks a lot 😀 Greeting from Poland 😉

  2. Deron says:

    I too had this problem, but as Adam H seems to indicate, you might need to install the 23734 download (i.e. 2007 Office Access Engine) as well. I tried the one you mention (i.e. http://www.microsoft.com/download/en/details.aspx?id=13255) but when that still didn’t do the trick, I also installed http://www.microsoft.com/download/en/details.aspx?id=23734, and that did it. Thanks!

    • Thanks for the clarification Deron. I recently ran into this again and as you indicated I had to in stall 23734. Maybe one day I’ll do some digging and find exactly which situations require each download.

  3. lucas says:

    It works for me too… Thanks!

Leave a Reply