SSIS 2008R2 to 2014 upgrade - the requested OLE DB provider Microsoft.ACE.OLEDB.15.0 is not registered ...

  • We were using 2008R2 and developed multiple packages in BIDS - all of them taking data from Excel into SQL. When you look at the connection manager - connection string properties in BIDS it says Microsoft.ACE.OLEDB.12.0

    We upgraded packages to Visual Studio 2015 running against a new server with SQL Server 2014.. When I open the package in VS2015 and look at the same connection it still lists the provider as Microsoft.ACE.OLEDB.12.0

    We run the jobs via SQL Server Agent running them in 32bit mode.

    On the old server all was good. Now that we have moved we get a new error.

    The requested OLE DB provider Microsoft.ACE.OLEDB.15.0 is not registered. If the 32-bit driver is not installed, run the package in 64-bit mode. Error code: 0x00000000.  An OLE DB record is available.  Source: "Microsoft OLE DB Service Components"  Hresult: 0x80040154  Description: "Class not registered". 

    Now I think there are two issues.
    1. I don't think the Access 2010 providers were installed which I think are the ones I want.

    2. Why does the error message  come back as "Microsoft.ACE.OLEDB.15.0 " I was expecting 12.0 to be in the error message?

    The Access  providers will be put on  overnight but worried about why it is compalining about 15.0??

    All assistance gratefully received.

  • Yep, that is pretty weird. The only plausible explanation I can think of (and we're speculating of course), is that SSIS might be looking for a later version of the same driver in the event that it does not find the specific version in your connection string. 

    You'll definitely need to install the Access 2010 (32-bit) drivers if you'd like to keep running with v 12.0

  • why 32 bit? all newer servers are 64 bit and unless you have a particular need for a driver for which there isn't any 64bit version I do not see why you would run in 32 bit still.
    you do need the ace 2010 runtime plus SP1 installed.

    As for it complaining about 2015 ACE - this may just be a typo on your configuration files (i assume you are indeed using config files or database to configure your settings)

  • I have gone for 32 bit for a number of reasons.
    1. The old server  20085R2 used the 32 bit provider and and ran in 32 bit mode.
    2. My Laptop (which is the only dev environment) uses the 32bit provider and runs in 32 bit mode.

    This does not mean it is the best way forward. However the risk is - if I need to upgrade / install 64 bit drivers it could be two weeks of sitting doing nothing waiting for the correct install. Any issues I have 100+ packages and want to reduce the impact \ risk on these packages.

    If I was just starting this project then I would go 64 bit.

    Hope that explains my choice

  • Ells - Tuesday, October 30, 2018 7:09 AM

    I have gone for 32 bit for a number of reasons.
    1. The old server  20085R2 used the 32 bit provider and and ran in 32 bit mode.
    2. My Laptop (which is the only dev environment) uses the 32bit provider and runs in 32 bit mode.

    This does not mean it is the best way forward. However the risk is - if I need to upgrade / install 64 bit drivers it could be two weeks of sitting doing nothing waiting for the correct install. Any issues I have 100+ packages and want to reduce the impact \ risk on these packages.

    If I was just starting this project then I would go 64 bit.

    Hope that explains my choice

    What error do you get if you run the packages in 64-bit mode?

    If you haven't even tried to resolve your issue, please don't expect the hard-working volunteers here to waste their time providing links to answers which you could easily have found yourself.

  • Phil,
    I am sure we got exactly the same error. My assumption having spoken to the DBA was that no Access drivers were installed.
    We tried running in 32 and 64 bit modes and had the same error.
    32 bit  driver is due to be installed overnight so fingers crossed!

    Cheers
    M

  • Error Messages from when executed from SQL Agent job in Run 32 bit mode set in True and False modes
    64 Bit error messages
    ======
    SSIS Error Code DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER.
    The AcquireConnection method call to the connection manager "Excel Connection Manager" failed with error code 0xC0209303.
    There may be error messages posted before this with more information on why the AcquireConnection method call failed.

    The requested OLE DB provider Microsoft.ACE.OLEDB.15.0 is not registered. If the 64-bit driver is not installed, run the package in 32-bit mode.
    Error code: 0x00000000. An OLE DB record is available. Source: "Microsoft OLE DB Service Components" Hresult: 0x80040154 Description: "Class not registered".

    32 Bit error messages
    ======
    SSIS Error Code DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER.
    The AcquireConnection method call to the connection manager "Excel Connection Manager" failed with error code 0xC0209302.
    There may be error messages posted before this with more information on why the AcquireConnection method call failed.

    The requested OLE DB provider Microsoft.ACE.OLEDB.15.0 is not registered. If the 32-bit driver is not installed, run the package in 64-bit mode.
    Error code: 0x00000000. An OLE DB record is available. Source: "Microsoft OLE DB Service Components" Hresult: 0x80040154 Description: "Class not registered".

  • Ells - Tuesday, October 30, 2018 7:24 AM

    Phil,
    I am sure we got exactly the same error. My assumption having spoken to the DBA was that no Access drivers were installed.
    We tried running in 32 and 64 bit modes and had the same error.
    32 bit  driver is due to be installed overnight so fingers crossed!

    Cheers
    M

    You can check for yourself what is installed by going into SSMS and expanding Server Objects/Linked Servers/Providers.

    If you haven't even tried to resolve your issue, please don't expect the hard-working volunteers here to waste their time providing links to answers which you could easily have found yourself.

  • Phil Parkin - Tuesday, October 30, 2018 7:45 AM

    You can check for yourself what is installed by going into SSMS and expanding Server Objects/Linked Servers/Providers.

    Awesome,
    never noticed that before!
    Cheers
    M

Viewing 9 posts - 1 through 8 (of 8 total)

You must be logged in to reply to this topic. Login to reply