none
problem connection to access 2010 db RRS feed

  • Question

  • Hello

    I'm having a problem connecting to an access 2010 db, I created a new wpf project, I opened the db connection wizard (data->add net data source->database->new connection), I chose the provider to be ole db, entered the db location, pressed on test connection and got the following error:

    the microsoft.ace.oledb.12.0 provider is not registered on the local machine.

    I searched google and went over a lot of solutions which included installing access 2010 db engine, updating windows with new access data compenents, changing the build to be on x86 and so on... but unfourtaintly nothing worked.

    My system description is:

    Windows 7 64bit

    Office 2010 64 bit

    Visual studtio 64bit (with sp1)

    Best,

    Roni.

    • Moved by Vicky SongMicrosoft employee Monday, March 12, 2012 5:57 AM (From:Visual Studio Database Development Tools (Formerly "Database Edition Forum"))
    Saturday, March 10, 2012 2:32 PM

Answers

  • You need to use the 64 bit ACE to connect to 64 bit Access, which does not work in the Visual Studio because VS is 32bit.

    You can create a 32bit db with the same structure and use it at design time.



    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful, so they will appear differently to other users who are visiting your thread for the same problem.
    Visual C++ MVP

    Monday, March 12, 2012 6:52 AM

All replies

  • Hello

    I'm having a problem connecting to an access 2010 db, I created a new wpf project, I opened the db connection wizard (data->add net data source->database->new connection), I chose the provider to be ole db, entered the db location, pressed on test connection and got the following error:

    the microsoft.ace.oledb.12.0 provider is not registered on the local machine.

    I searched google and went over a lot of solutions which included installing access 2010 db engine, updating windows with new access data compenents, changing the build to be on x86 and so on... but unfourtaintly nothing worked.

    My system description is:

    Windows 7 64bit

    Office 2010 64 bit

    Visual studtio 64bit (with sp1)

    Best,

    Roni.

    Saturday, March 10, 2012 5:21 PM
  • If I understand properly then you have design time problems? I mean you can't connect to Access database from within Visual Studio? If yes, then I assume there is something wrong with OLEDB registration on your machine. Changing project to x86 won't help at this point (it is required for runtime).

    Can you try reinstalling office? Or connecting using OLEDB provider from somewhere else?

    Besides I'd recommend avoiding Access in .net application, SQL Server Compact (or similar copy&paste-embedded database engine)  is a much better solution.

    Or SQL Server Express.


    Miha Markic [MVP C#] http://blog.rthand.com


    • Edited by Miha Markic Sunday, March 11, 2012 11:16 AM
    Sunday, March 11, 2012 11:14 AM
  • OTOH, Visual Studio is a 32 bit beast. Could it be that Office 2010 doesn't provide a 32 bit OLEDB provider?

    Miha Markic [MVP C#] http://blog.rthand.com

    Sunday, March 11, 2012 11:21 AM
  • Hi ronias,

    Welcome to MSDN Forum.

    Have you installed some other version of Offece or Visual Studio?

    Best Regards


    Allen Li [MSFT]
    MSDN Community Support | Feedback to us

    Monday, March 12, 2012 6:20 AM
    Moderator
  • You need to use the 64 bit ACE to connect to 64 bit Access, which does not work in the Visual Studio because VS is 32bit.

    You can create a 32bit db with the same structure and use it at design time.



    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful, so they will appear differently to other users who are visiting your thread for the same problem.
    Visual C++ MVP

    Monday, March 12, 2012 6:52 AM
  • Hi Sheng Jiang,

    Thanks for your reply. @ronias said the VS is 64bit, so I think it is not the reason. From the initial post, I find ranias has already tried the possible solutions, but no one works. Do you have any ideas?

    Best Regards


    Allen Li [MSFT]
    MSDN Community Support | Feedback to us

    Monday, March 12, 2012 6:57 AM
    Moderator
  • Microsoft has never released a 64bit VS version. 


    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful, so they will appear differently to other users who are visiting your thread for the same problem.
    Visual C++ MVP

    Monday, March 12, 2012 7:00 AM
  • There are two versions of the ACE OLEDB Provider. Did you install the 32-bit version (use the /passive command line option for 2010)? If so, then Miha's suggestion of setting the Platform to x86 should resolved the issue.

    Paul ~~~~ Microsoft MVP (Visual Basic)

    Tuesday, March 13, 2012 3:30 PM
  • This sounds identical to the problem I had as described on this thread, I resolved in by installing  the 2007 Office System Driver: Data Connectivity Components in addition to Office 2010.
    • Proposed as answer by JCorona Tuesday, March 13, 2012 9:14 PM
    • Unproposed as answer by JCorona Tuesday, March 13, 2012 9:14 PM
    Tuesday, March 13, 2012 4:05 PM
  • Sorry about the above, don't know whot to undo???

    Don't know if this may help, but I had the same issue.

    1. Open project properties

    2. Click on the compile tab

    3. Click on advanced Compile Options

    4. And under target CPU change it to x86

    Close and recompile, I think that's the problem???

    Tuesday, March 13, 2012 9:16 PM