Menu

invalid database address Error

Help
2015-10-20
2015-10-21
  • Kais Haddadin

    Kais Haddadin - 2015-10-20

    I am having some problems with some Access files, the problem is, I want to connect to table "t_Aktionen", but I can not connect, the error is always "invalid database address", I only get two warnings regarding two other tables:

    1. WARNING:You shouldn't use 'user' reserved word as column name in the table t_Log (it refers to the database user).
      Escape it in your SQL!
      -> refer to table t_Log.

    (e.g. SELECT [USER] FROM TABLE WHERE [USER]='Joe')
    2. WARNING:Invalid textual value in table t_Reklamationen_Korrupt, column Bemerkung: it might look like (curropt String)
    -> refer to table t_Reklamationen_Korrupt

    When I delete the two tables, the connection works, So I am wondering why the driver can not simply ignore the two tables? this is my first question

    I tried to make a better workaround by use remap, I created a new database file linked.accdb, which only have a linked table to t_Aktions in the new file (even without the two problematic tables). This still fails:

    invalid database address: jdbc:ucanaccess://C:\Users\khaddadin\Desktop\linked.accdb;remap=C:\Users\khaddadin\Desktop\Reklamationen_be_m.accdb|C:\Users\khaddadin\Desktop\Reklamationen_be_m.accdb

    And it is always the same error.

    Is there a known bug? I am using the latest version 3.0.1, jackcess 2.1.2.

     
  • Kais Haddadin

    Kais Haddadin - 2015-10-20

    attached is the problematic database.
    the linked.accdb is simply an empty database with linked table t_Aktionen in the attached one.

     
  • Marco Amadei

    Marco Amadei - 2015-10-20

    You are using a old version of ucanaccess: using the latest one you would likely get an OutOfMemory at the first attempt, and an invalid page after having increased the heap. Your db is corrupted, the Compact and Repair Ms Access tool will solve the issue. Please let me know your findings.

     

    Last edit: Marco Amadei 2015-10-20
  • Kais Haddadin

    Kais Haddadin - 2015-10-21

    I think there is still a problem, uploaded is the file Reklamationen_be_m.accdb, this file is the same as the old one but without the corrupted table, a direct cnnection to this database works correctly and a query on table t_Aktionen is possible, if I try to make a linked.accdb that contain only a linked table t_Aktionen to the t_Aktionen table in the new db Reklamationen_be_m.accdb, I can not connect to the newly created linked.accdb. The error is this:

    invalid database address: jdbc:ucanaccess://C:\Users\khaddadin\Desktop\linked.accdb;singleConnection=true;remap=C:\Users\khaddadin\Desktop\Reklamationen_be_m.accdb|C:\Users\khaddadin\Desktop\Reklamationen_be_m.accdb

    If a databases connection works a linked table to this database should also work, right?
    I tried with 3.0.2 version and it is the same as in 3.0.1

     
  • Kais Haddadin

    Kais Haddadin - 2015-10-21

    hier is the database I use for linking.

    Cheers,
    Kais

     
  • Marco Amadei

    Marco Amadei - 2015-10-21

    Yes, something strange due to an hidden table, so that I can't create a link to the linked database Reklamationen_be_m.accdb from a new accdb. But I can't reproduce the same issue, so please post the ucanaccess console output after having tried to establish a connection to the linked.accdb (the mapping jdbc:ucanaccess://C:\Users\khaddadin\Desktop\linked.accdb;singleConnection=true;remap=C:\Users\khaddadin\Desktop\Reklamationen_be_m.accdb|C:\Users\khaddadin\Desktop\Reklamationen_be_m.accdb seems to be useless). We have to align on the same error before solving.

     
  • Kais Haddadin

    Kais Haddadin - 2015-10-21

    I thought I need the mapping as soon as I want to connect to external tables? when is then remap needed?

    the error from the console for file linked.accdb:
    Loaded Tables:

    Loaded Queries:

    Loaded Indexes:

    net.ucanaccess.jdbc.UcanaccessSQLException: UCAExc:::3.0.2 null
    at net.ucanaccess.jdbc.UcanaccessDriver.connect(UcanaccessDriver.java:258)
    at java.sql.DriverManager.getConnection(Unknown Source)
    at java.sql.DriverManager.getConnection(Unknown Source)
    at net.ucanaccess.console.Main.main(Main.java:145)
    Caused by: java.lang.NullPointerException
    at net.ucanaccess.converters.UcanaccessTable.getColumns(UcanaccessTable.java:74)
    at net.ucanaccess.converters.LoadJet$TablesLoader.createSyncrTable(LoadJet.java:433)
    at net.ucanaccess.converters.LoadJet$TablesLoader.createSyncrTable(LoadJet.java:411)
    at net.ucanaccess.converters.LoadJet$TablesLoader.createTable(LoadJet.java:807)
    at net.ucanaccess.converters.LoadJet$TablesLoader.createTable(LoadJet.java:761)
    at net.ucanaccess.converters.LoadJet$TablesLoader.createTables(LoadJet.java:942)
    at net.ucanaccess.converters.LoadJet$TablesLoader.loadTables(LoadJet.java:1036)
    at net.ucanaccess.converters.LoadJet$TablesLoader.access$2900(LoadJet.java:273)
    at net.ucanaccess.converters.LoadJet.loadDB(LoadJet.java:1479)
    at net.ucanaccess.jdbc.UcanaccessDriver.connect(UcanaccessDriver.java:243)
    ... 3 more
    UCAExc:::3.0.2 null
    Drücken Sie eine beliebige Taste . . .

    Compact and repair did not help either

     
  • Marco Amadei

    Marco Amadei - 2015-10-21

    Okey, remap is needed mainly on linux/unix and no windows OS(you can't get the linked databases having a unix path). It seems the source of the issue is that jackcess puts in the tables list f_A4DBDD3E89E84520BF0DEB5287A60531_AnhangDocs which is a hidden subtable created by ACCESS to handle the complex type Attachments. In other words this happens if and only if you links an external table that contains a complex type column with Attachments. That will be worked around by ucanaccess in svn ASAP. An official release 3.0.2.1 with the work around may take about one week instead. Cheers Marco

     

Log in to post a comment.