2014-03-27 33 views
1

我們有一個SQL Compact Edition數據庫,用於存儲配置設置。它工作正常,但我想對其進行更改以存儲其他信息。如何將sqlce更改分發給客戶端

我使用Winforms在C#中編寫代碼。

當我在項目中對數據庫進行更改時,我需要將這些更改發送給客戶,以便他們對代碼更改進行更改。我們的客戶有遠程筆記本電腦,我們必須手動更新。如果可能的話,我更喜歡一些在代碼中自動完成的方法。我對SQLCE並不熟悉,不知道我可以使用哪些工具對客戶數據庫進行這些更改。每臺遠程筆記本電腦都有自己的SQLCE數據庫和自己的代碼來訪問它。他們是沒有連接到網絡的個人筆記本電腦。

什麼是從我的項目數據庫進行比較和分配更改的簡單方法,並確保將這些更改應用於客戶數據庫?

+2

如果你打算投票告訴我爲什麼我可以解決黨的問題。 – ErocM

+0

我沒有投票,但是,你的問題很混亂。你在問如何更新數據庫以及如何更新軟件以反映這些變化?如果是這樣,那麼這是一個巨大的問題,我們不知道你的評論設置爲+1 +1 – Dave

+0

我會澄清該帖子的TY。 – ErocM

回答

3

這是一個常見問題。你用你的數據庫發佈你的應用程序,然後一個新的實現需要你的數據庫中有一個新的字段(或其他一些模式更改)。現在,您如何計劃更新那些已經安裝了您的應用並且內部有寶貴數據的客戶?

它與許多細節的護理複雜的任務,但在其最簡單的形式,可以通過這種方式來實現:

添加,裏面你的數據庫,只有一條記錄和一列新表。該表將被稱爲DBVersion,並且該記錄包含一個反映安裝的數據庫版本的數字。 (如果你有一個配置表,你可以簡單地添加有記錄)

現在,你需要準備一個XML文件到您的更新

<Scripts> 
    <Script> 
     <Version>1</Version> 
     <Command>ALTER TABLE ......</Command> 
    <Script> 
    .... 
<Scripts> 

分佈在這一點上你的應用程序可以讀取存儲的版本號並加載XML文件,以執行與版本號相關聯的每個命令,該版本號比存儲在數據庫表中的版本號更高。

+1

謝謝你的答覆。我相信這就是我要找的!我會給這個鏡頭。再次感謝! – ErocM

相關問題