我使用jdbc驱动程序连接到由sqlite manager生成的sqlite数据库。我使用以下一个,效果很好,
Connection conn =DriverManager.getConnection("jdbc:sqlite:C://Users//13149//Desktop//SqliteDB0.sqlite");
当我用以下内容替换上面的那个时,
Connection conn =DriverManager.getConnection("jdbc:sqlite:localhost:3306//Database//SqliteDB0.sqlite"); (*)
第一次运行,它停在那里,没有任何事情发生。但是,当我再次,它总是给出以下错误消息:
java.sql.SQLException: path to 'localhost:3306//Database//SqliteDB0.sqlite': 'C:\Users\13149\Documents\NetBeansProjects\SqliteOpenDB\localhost:3306' does not exist
at org.sqlite.core.CoreConnection.open(CoreConnection.java:192)
at org.sqlite.core.CoreConnection.<init>(CoreConnection.java:76)
at org.sqlite.jdbc3.JDBC3Connection.<init>(JDBC3Connection.java:24)
at org.sqlite.jdbc4.JDBC4Connection.<init>(JDBC4Connection.java:23)
at org.sqlite.SQLiteConnection.<init>(SQLiteConnection.java:45)
at org.sqlite.JDBC.createConnection(JDBC.java:114)
at org.sqlite.JDBC.connect(JDBC.java:88)
at java.sql.DriverManager.getConnection(DriverManager.java:664)
at java.sql.DriverManager.getConnection(DriverManager.java:270)
at sqliteopendb.SqliteOpenDB.main(SqliteOpenDB.java:30)
这里SqliteOpenDB.java:30是(*)句子。有人可以帮帮我吗?感谢。
答案 0 :(得分:0)
看起来驱动程序不支持联网的SQLite数据库,因为它将localhost:3306解释为工作目录中文件的相对路径。 driver documentation没有说支持这样的功能。确实是I've never seen a SQLite that listens on the network。你想做什么?