none
Can I access Large Number data type in Access 2016 file using Microsoft.ACE.OLEDB provider? RRS feed

  • Question

  • In my .Net app, I use an Microsoft.ACE.OLEDB.12.0 provider to read data from Access files.
    Everything had been working fine, until I faced the need to read data from file containing Large Number column type. (https://support.office.com/en-us/article/Using-the-Large-Number-data-type-5b623f6e-641d-4e97-8bdf-b77bae076f70) I've installed the latest Database Engine (https://www.microsoft.com/en-us/download/details.aspx?id=54920 , 32-bit version) and followed the instructions. Still, I'm getting next error when opening the connection to that file:

    System.Data.OleDb.OleDbException: 'The database you are trying to open requires a newer version of Microsoft Access.'

    Is Large Number supported in OLEDB provider?

    Note: I've also tried using Microsoft.ACE.OLEDB.16.0 provider (instruction tells to use 12.0) and got same results.

    Note 2: I've tried using the latest release of Database Engine 2010. Same problem.







    • Edited by StripedL Wednesday, August 9, 2017 1:54 PM
    Wednesday, August 9, 2017 9:32 AM

Answers

  • Hi StripedL,

    When we connect the Access database through OLEDB provider, it using the aceoledb.dll to connect the ACE Engine like figure below:

    And based on the test, component contains the aceoledb.dll in the Microsoft Access Database Engine 2016 Redistributable doesn't support the Large Number data type at present. We will get the exception like 'The database you are trying to open requires a newer version of Microsoft Access'. If you want the Access to support this data type, you may submit the feedback through link below:

    Welcome to Access Suggestion Box!

    Regards & Fei


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    • Marked as answer by StripedL Thursday, August 10, 2017 8:26 AM
    Thursday, August 10, 2017 7:35 AM
    Moderator

All replies

  • Please defined "large number" and what you mean by "read data from file".

    The data types have all their limits. Maybe you need to look at a Number of field size Double (signed 64-bit). But here precisions may be a problem.

    When you generally talk about large integers, then they may not fit into Number (Long Integer) which is a signed 32-bit.

    Wednesday, August 9, 2017 11:52 AM
  • What is the Access data type you are working with? A Large Number sounds like something from a different type of database, which means you would be using a different OLEDB, ODBC or ISAM driver to connect.

    Paul ~~~~ Microsoft MVP (Visual Basic)

    Wednesday, August 9, 2017 12:14 PM
  • Hello Stefan,

    Large Number is a data type. It was introduced in MS Access 2016:

    https://support.office.com/en-us/article/Using-the-Large-Number-data-type-5b623f6e-641d-4e97-8bdf-b77bae076f70

    Read data means opening connection to file from my application, using Microsoft.ACE.OLEDB.12.0 specified as provider in connection string. Then app performs actions like getting data from datarows. 

    Using conn As OleDbConnection = New OleDbConnection(connectionString)
    Try
    conn.Open()

    'reading data....

    End Try

    Exception occurs on conn.Open().



    • Edited by StripedL Wednesday, August 9, 2017 12:59 PM
    Wednesday, August 9, 2017 12:53 PM
  • Hello Paul,

    I meant Large Number datatype (basically Bigint) in MS Access 2016:

    https://support.office.com/en-us/article/Using-the-Large-Number-data-type-5b623f6e-641d-4e97-8bdf-b77bae076f70


    • Edited by StripedL Wednesday, August 9, 2017 1:00 PM
    Wednesday, August 9, 2017 12:57 PM
  • Hi StripedL,

    When we connect the Access database through OLEDB provider, it using the aceoledb.dll to connect the ACE Engine like figure below:

    And based on the test, component contains the aceoledb.dll in the Microsoft Access Database Engine 2016 Redistributable doesn't support the Large Number data type at present. We will get the exception like 'The database you are trying to open requires a newer version of Microsoft Access'. If you want the Access to support this data type, you may submit the feedback through link below:

    Welcome to Access Suggestion Box!

    Regards & Fei


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    • Marked as answer by StripedL Thursday, August 10, 2017 8:26 AM
    Thursday, August 10, 2017 7:35 AM
    Moderator