2014-02-12 194 views
0

我正在努力研究和開發當前僅從命令行運行的開源數據庫的JDBC驅動程序。翻譯查詢,處理語句和結果集似乎非常易於管理,但是在建立連接時我非常困惑。開發JDBC驅動程序

如果我構建一個JDBC驅動程序,數據庫是否需要客戶端API才能這樣做?數據庫完全用C++/CUDA編寫,但我想開發這個驅動程序來將數據庫與其他可視化工具集成。看着MySQL和PostgreSQL JDBC驅動程序,我似乎無法發現純粹的連接部分是如何處理的以及需要什麼。是否有必要讓數據庫在端口上偵聽並作爲服務運行?目前,通過從命令行發佈腳本來使用數據庫,並且當前不接受查詢,但正在開發中。任何幫助是極大的讚賞。

感謝

+0

更難看看現有的驅動程序,應該有一個TCP連接建立的地方。 –

+0

原則上,可以創建一個執行命令行腳本的驅動程序,但由於會有一個正常的網絡API,因此需要依賴它。 –

+2

根據DBMS的工作方式,查看SQLite的[JDBC驅動程序](https://bitbucket.org/xerial/sqlite-jdbc)的代碼可能會有幫助。 –

回答

1

沒有什麼的Driver API強制您傳遞到DriverManager的網址連接到您的數據庫有一個主機名和端口英寸如果您的數據庫不在網絡上偵聽,但只是您運行的可執行文件,則url可能是該網址的路徑。對於嵌入式數據庫,您的url可能不會攜帶信息欄的前綴來調用您的驅動程序。所以如果你的數據庫不能以這種方式工作,不要擔心網絡連接。正如評論所說,像SQLite這樣的嵌入式數據庫使用非基於網絡的URL。

+0

謝謝你 – user3302087