2013-06-06 26 views
0

我爲我的一個項目使用SQL CE 3.5,前端是處理給定文件並將數據轉儲到SQL CE數據庫的WPF應用程序。將SQL精簡版數據庫保存在同一網絡中的另一臺機器上時遇到的問題

目前應用程序和數據庫在同一臺機器上。

客戶希望他能夠從網絡上的任何機器運行應用程序,但數據庫應該保持在服務器的共享位置。

用戶將在應用程序中選擇SDF文件的路徑,然後當任何文件被處理時,應用程序會將數據轉儲到數據庫。

我的問題是,如果將SDF文件保存在網絡共享位置並從任何機器訪問它,那麼它會正常工作還是可能出現問題?

回答

1

實際上,這是不可能的 - SQL CE不支持網絡託管操作:與sdf文件(臨時數據)相關的所有內容都記錄到本地機器,而不是網絡源,因此服務器無法處理請求正確。

可以使用SQL Express服務器,其作用類似於數據存儲,本地客戶端,你唯一需要的是微軟同步庫2.1(它也可以與SQL CE 4.0 SP1)

彙總,創建SQL CE數據庫,填充表格,索引它們,然後將其移植到SQL Server Express,將同步模塊添加到您的應用程序(在單獨的線程ofc中),就是這樣。

另一種解決方案是使用MS Access數據庫,它允許這樣的混亂,但它是令人難以置信的慢,更不用說沒有辦法允許同時寫入數據庫。

+0

我已經測試過這個,我在網絡共享上保留了數據庫,然後通過我的應用程序在SQL CE .sdf中插入記錄。 – Deepesh

+1

是的,它可以工作,但是當時只有一個用戶可以連接,並且這是一個不受支持的場景。 – ErikEJ

相關問題