如何在Netbeans 6.5中建立数据库服务以连接到SQLite数据库?

时间:2008-11-30 10:23:44

标签: sqlite netbeans jdbc sqlite2

我使用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)

我该怎么办? :(

2 个答案:

答案 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命令行界面:))