2009-07-27 86 views
2

我想在java.I寫一個小的(5-6表)桌面應用程序想要使用Firebird 2.1。 database.But我googled,看到HSQLDB.I想做出火鳥和hsqldb之間的決定:)Firebird vs Java的HSQLDB

那麼,我必須使用哪個數據庫?

+0

你爲什麼縮小到這兩個?你看過Oracle還是MySQL? – jjnguy 2009-07-27 12:47:12

+2

+ http://www.h2database.com/ – 2009-07-27 12:47:50

+1

我會去Apache Derby。它實際上製作得非常好,如果需要可以是事務性的(儘管從未嘗試過),使用Java編寫是另外一個優點。問題當我刪除表中的數據時,我發現它不會'回送'佔用磁盤空間,一旦我無法修復一個索引。 – 2009-07-27 13:17:33

回答

3

對於桌面應用程序,嵌入式數據庫應該足夠了。 hsqldbh2非常適合這個。您只需將JAR文件添加到應用程序類路徑中即可。火鳥看起來更復雜。

其實H2 is more advanced than hsqldb

1

不要忘記,Java 6自帶JavaDB,這可能是第一個解決方案的有用實現。這是一個重新包裝的Apache Derby,因此非常強大。

6

Firebird在自己的過程中運行,您的Java應用程序需要與它進行通信。 HSQLDB的優點在於它是用java編寫的,並且可以在相同的進程中運行,這簡化了安裝和運行時檢查(db運行,​​連接錯誤等)。它也可以將數據保存到磁盤。另外一個選項是H2 database db,它也可以在運行過程中運行。

我會使用HSQLDB或H2。

2

我推薦HSQLDB,因爲它是用Java實現的(所以你有和應用程序相同的平臺),我想你不需要FireBird可以提供的那個大小的項目的任何特性。

2

火鳥是非常優秀的嵌入式數據庫和止贏在SouceForge this year

SQLite的一個獎項都好按嵌入式數據庫了。