Come rendere un servizio di database in Netbeans 6.5 per connettersi ai database SQLite?
Domanda
Uso Netbeans IDE (6.5) e ho un database SQLite 2.x. Ho installato un driver JDBC SQLite da zentus.com e ho aggiunto un nuovo driver nel pannello dei servizi di Nebeans. Quindi ho provato a connettermi al mio file di database da Servizi > Database che utilizzano questo URL per il mio database:
jdbc: sqlite: /home/farzad/netbeans/myproject/mydb.sqlite
ma non riesce a connettersi. Ottengo questa eccezione:
org.netbeans.modules.db.dataview.meta.DBException: Unable to Connect to database : DatabaseConnection[name='jdbc:sqlite://home/farzad/netbeans/myproject/mydb.sqlite [ on session]']
at org.netbeans.modules.db.dataview.output.SQLExecutionHelper.initialDataLoad(SQLExecutionHelper.java:103)
at org.netbeans.modules.db.dataview.output.DataView.create(DataView.java:101)
at org.netbeans.modules.db.dataview.api.DataView.create(DataView.java:71)
at org.netbeans.modules.db.sql.execute.SQLExecuteHelper.execute(SQLExecuteHelper.java:105)
at org.netbeans.modules.db.sql.loader.SQLEditorSupport$SQLExecutor.run(SQLEditorSupport.java:480)
at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:572)
[catch] at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:997)
Cosa devo fare? : (
Soluzione
La versione corrente di Zentus SQLiteJDBC è v053, basata su SQLite 3.6.1. Non aprirà un database SQLite 2.x. Forse è possibile utilizzare lo strumento da riga di comando SQLite 2.x per scaricare il database e lo strumento da riga di comando Sqlite3 per caricarlo. Utilizzare Zentus SQLiteJDBC per accedere al nuovo database SQLite 3.x.
In alternativa, utilizzare un driver JDBC che supporti SQLite 2 come questo .
Altri suggerimenti
Mi sta agitando ...
Ho fatto due errori durante il mio primo tentativo. Dopo aver impostato CLASSPATH
come variabile di sistema (spero di non aver rotto qualcos'altro :)), mettendo sqlite_jni.dll
su system32
cartella e correzione URL JDBC
Ho avuto successo :)
Ho anche scaricato il loro wrapper ODBC SQLite
. L'ho installato e stabilito una connessione al mio database SQLite2
tramite driver ordinario e UTF8
basato su ODBC
. Ho anche usato il driver Bridge NetBeans JDBC-ODBC
per poter impostare questa connessione.
Tutte e tre le connessioni sono state create ma:
normale driver ODBC
: vedo i dati di testo in una codifica errata. Tutte le altre colonne sono visualizzate correttamenteDriver ODBC UTF8
: non vedo affatto i dati di testo. Tutte le altre colonne sono visualizzate correttamenteDriver JDBC
: non vedo alcuna colonna." Select * da my_any_table "
restituisce sempre una singola colonna vuota
Ho dati russi nel mio database.
Quindi ... attualmente sono tornato all'interfaccia della riga di comando di sqlite :))