2013-03-20 35 views
4

我的Java桌面代碼使用SQL Server 2008數據庫作爲其持久層。我希望能夠將這些代碼分發給數據庫。也就是說,java代碼應該排序爲「包含數據庫」。程序的任何用戶都應該擁有數據庫的本地副本,並且應該能夠使用我的java代碼,而無需安裝整個sql服務器,也不需要執行所有複雜的設置(也許一些小型exe文件可以安裝我的數據庫)。我該怎麼做呢 ?我需要爲Java代碼創建獨立的數據庫(最好是SQL Server)

編輯

我想與我的Java代碼包我的數據庫。我需要一些關於如何去做的建議。我是新手,所以我不知道與我想做什麼有關的技術術語。所以,我甚至無法搜索谷歌。我會用什麼詞搜索?我需要關於如何去做的想法。有經驗的人可以指導我。

+0

你不能用SQL Server做到這一點。您的客戶必須安裝SQL Server。您可以將數據庫更改爲嵌入式數據庫,如[JavaDB](http://www.oracle.com/technetwork/java/javadb/index.html),並檢查數據庫是否安裝在客戶端計算機上,如果不是然後運行腳本以使用基礎數據安裝數據庫。 – 2013-03-20 06:44:11

+1

@Christopher這是一個有效的問題。另外,我不知道如何爲Java代碼編寫獨立的數據庫。 – 2013-03-20 06:44:37

+0

@Christopher - 我不明白爲什麼這個問題是無效的。我想用我的java代碼打包我的數據庫。我需要一些關於如何去做的建議。我是新手,所以我不知道與我想做什麼有關的技術術語。所以,我甚至無法搜索谷歌。 – 2013-03-20 06:45:44

回答

3

你會發現一個Java數據庫比Sql Server容易得多; SQL服務器將需要更多的打包選項。

一些Java DB選項包括

  • Java DB自帶的Java的最新版本,節省分配DB。

  • H2 Database - 它在最初的你以嵌入模式,而是「DB服務器」連接 到數據庫的啓動,因此其他數據庫連接可以

  • HSQLDB老字號項目運作的混合模式。

所有3都提供嵌入式或服務器操作。 H2的混合模式也可能非常有用

+0

布魯斯 - 這些包裝選項是什麼? – 2013-03-20 07:01:33

+0

我不能專門爲SQL服務器,但我已經使用MsAccess作爲後端,如果你使用SQL服務器,用戶是否必須安裝SQL Server或將你,如果你安裝SQL服務器,如果它已經安裝???。我發現Pure Java DB更清潔/更易於使用,您只需安裝DB jar(並可能在計算機啓動時啓動服務器)。 – 2013-03-20 07:18:41

0

如果您需要堅持使用SQL Server,可能您可以嘗試使用SQL Server Compact。看到這裏:http://en.wikipedia.org/wiki/SQL_Server_Compact和在這裏:http://www.microsoft.com/en-us/sqlserver/editions/2012-editions/compact.aspx並檢查它是否適合您的需求。

+0

我確定,但看起來沒有用於SQL Server compact的JDBC和ODBC驅動程序。 – 2013-03-20 07:15:08

+0

@sky scraper也許會有幫助:http://stackoverflow.com/questions/141454/jdbc-driver-for-microsoft-sql-server-cecompact-edition-3-5和http://stackoverflow.com/問題/ 358318 /如何使用sql-server-compact-edition-ce-from-java – rsc 2013-03-20 07:23:42

+0

rsc - 該程序沒有任何文檔。沒有支持是不好的。 http://sqlcedatabaseeditor.codeplex.com/ btw,這個數據庫編輯器是什麼?它是一個數據庫嗎? – 2013-03-20 07:27:28

4

您正在尋找embedded database

有幾個數據庫可以嵌入。我不認爲這是可能的與Microsoft SQL Server。請注意,Microsoft SQL Server是一種商業產品,所以即使您被允許將其與您的應用程序一起分發,您的客戶也需要向Microsoft支付費用。

,可以用來作爲在Java中嵌入式數據庫某些數據庫有:

上述兩個數據庫被寫入在純Java,這意味着你不t需要操作特定的本地代碼;他們將在Java可用的任何平臺上工作。

+0

我同意。嵌入式數據庫非常適合在這裏使用。 – pravat 2013-03-20 06:48:49

+0

Jesper - 快速的問題。我搜索了嵌入式SQL服務器。可以使用SQL Server compact代替您提到的數據庫。我很喜歡SQL服務器。這就是爲什麼我想使用SQL服務器。 – 2013-03-20 06:53:01

+0

@skyscraper不,SQL Server不是嵌入式數據庫服務器。如果你這樣做,你應該不得不隨你的應用程序一起分發SQL Server compact。 – 2013-03-20 06:53:50

相關問題