我使用Netbeans IDE(6.5),我有一个SQLite 2.x数据库。我从zentus.com安装了一个JDBC SQLite驱动程序,并在Nebeans服务面板中添加了一个新驱动程序。然后尝试从Services>连接到我的数据库文件使用此URL的数据库:
JDBC:源码:/home/farzad/netbeans/myproject/mydb.sqlite
但无法连接。我得到了这个例外:
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)
我该怎么办? :(
答案 0 :(得分:1)
当前版本的Zentus SQLiteJDBC是v053,基于SQLite 3.6.1。它不会打开2.x SQLite数据库。也许您可以使用SQLite 2.x命令行工具来.dump您的数据库,并使用Sqlite3命令行工具来加载它。使用Zentus SQLiteJDBC访问新的SQLite 3.x数据库。
或者,使用支持SQLite 2的JDBC驱动程序,例如this one。
答案 1 :(得分:0)
这让我感到害怕......
我在第一次尝试时犯了两个错误。将CLASSPATH
设置为系统变量后(希望我没有打破其他的:)),将sqlite_jni.dll
放到system32
文件夹并更正JDBC url
我取得了成功:)
我也下载了他们的SQLite ODBC wrapper
。安装它并通过普通的SQLite2
UTF8
驱动程序连接到ODBC
数据库。我还使用内置的NetBeans JDBC-ODBC
Bridge驱动程序来设置此连接。
已创建所有三个连接但是:
ordinary ODBC driver
:我看到错误编码的文字数据。所有其他列都正确显示
UTF8 ODBC driver
:我根本看不到文字数据。所有其他列都正确显示
JDBC driver
:我根本看不到任何专栏。 "Select * from my_any_table"
始终返回空的单列
我的数据库中有基于俄罗斯的数据。
所以...目前我已经回到了sqlite命令行界面:))