Domanda

I googleed questa domanda un sacco e le risposte sono incoerenti e nessuno ha aiutato. Così ho pensato che avrei potuto ottenere un po 'più di aiuto qui. Ho bisogno di codificare una piccola applicazione in Java per il mio prossimo classe che ottiene i dati da un database di MS Access (MDB) utilizzando ODBC. Il mio sistema operativo è 64bit di Windows 7 Ultimate. So che c'è un odbcad32 nella cartella SysWOW64. Sono riuscito a impostare un DSN lì. Ma io non riesco a collegarmi. L'applicazione genera un'eccezione SQL. Ho provato due alternative per DriverManager.getConnection () :

jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBH=E:/DB.mdb

e

jdbc:odbc:DSN_NAME

Il driver è:

sun.jdbc.odbc.JdbcOdbcDriver

[EDIT]

Il codice di connessione è sostanzialmente la seguente:

    try {
        Class.forName(driver);
        db = DriverManager.getConnection(url);
    }
    catch(SQLException e) {
        System.out.println("SQL error!");
    }
    catch(ClassNotFoundException e) {
        System.out.println("Class not found!");
    }

[/ EDIT]

E non funziona. Non so come risolvere il problema perché non so dove si trova problema! Se è il driver ODBC o Java o qualsiasi altra cosa.

E 'troppo fastidioso per utilizzare un WinXP virtuale per fare il lavoro. Questo non può andare avanti per sempre.

[EDIT2]

Giusto per essere sicuri: funziona su WinXP, come implicited. :}

[/ EDIT2]

I apprezzerebbe molto tutto l'aiuto ho potuto ottenere qui. : DDDDD

È stato utile?

Soluzione

Quindi dal momento che si dispone già di ODBC di installazione, si potrebbe desiderare di anche fare in modo che si sta utilizzando lo stesso 64 bit driver ODBC (se avete creato la vostra connessione ODBC sotto% windir% \ system32 \ odbcad32.exe). So per certo che non v'è alcun driver a 64 bit per Access 2007 quindi nel mio caso, ho dovuto creare una connessione ODBC a 32 bit (% WINDIR% \ SysWOW64 \ odbcad32.exe), declassare la mia versione di Java a 32 bit e l'uso il driver a 32 bit per farlo funzionare.

Spero che questo aiuti!

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top