2011-06-19 38 views
1

我試圖從閃存驅動器運行Apache Derby數據庫。我複製了相關的.jar文件並設法啓動了網絡服務器。但是,如何在連接到服務器時指定連接URL?該數據庫是標記爲G.在閃存驅動器上運行Apache Derby

用下面的代碼的閃存驅動器,而是跨越異常傳來:

 DriverManager.getConnection("jdbc:derby://localhost:1527"); 

值java.sql.SQLException:該URL「爲jdbc:德比://本地主機: 1527'的結構不正確。

如何連接並將其用作普通數據庫?

謝謝!

回答

3

閃存驅動器的存在對於這個問題並不重要。最重要的一點是Derby服務器是在嵌入式模式還是在網絡服務器模式下運行。

從所使用的URL看來,您打算連接到作爲網絡服務器運行的Derby。如果您已經使用Derby安裝中提供的startNetworkServer shell腳本啓動了Derby,則會出現這種情況。如果是這樣,那麼Derby文檔中定義的connection URL format如下所示。請注意,問題中發佈的URL中缺少databaseName參數。

jdbc:derby://server[:port]/databaseName[;attributeKey=value].. 

如果您不想在網絡服務器模式下啓動德比,而是作爲嵌入式數據庫,那麼connection URL format是不同的。請注意缺少端口號以及對子協議的依賴,其值爲directory,classpathjar之一。 Examples of this format也可以在文檔中找到。

jdbc:derby:[subsubprotocol:][databaseName][;attribute=value]*