簡體   English   中英

SQL Server Compact Edition數據庫部署策略

[英]Sql Server Compact Edition database deployment strategy

我有一個關於使用客戶端應用程序部署SQL Server CE數據庫的最合適方法的問題。 我了解我們需要安裝SQL Server CE必備組件等,因此這不是使它正常工作的問題。 它已經做到了。

現在,我們擁有的方法是,僅隨應用程序一起交付.mdf文件的副本(不包含數據),該副本將在安裝過程中復制到適當的位置。 這工作得很好,但是我想知道這是否是使用應用程序部署數據庫的“正確”方法,或者該數據庫應該是a。)在安裝過程中生成(作為自定義安裝操作),還是b。)。在應用程序的第一次運行時生成。

任何想法或建議,表示贊賞。 我意識到這個問題可能沒有一個可靠的答案。

這是在談論* .mdf文件,而不是如何確保SqlServerCE dll可用。

如何部署數據庫應用程序在很大程度上取決於以下問題:

數據庫是每個用戶的嗎?

  • 如果不是,應該嗎?
    • 在Vista以后的版本中,將數據庫放在Applications目錄中是一個壞主意,因為修改文件時它可能會觸發UAE請求。
  • 如果是針對每個用戶的,那么實際上您必須為每個用戶生成一個新的,因此必須為此運行一些代碼,以便您可以輕松地使用以下任何一種方法。

如果不是這樣,那么僅包含一個初始文件就可以了,這是最簡單的選擇。

首先數據庫是空的(即,您可以在代碼中創建表結構,並且在任何地方都沒有* .mdf文件作為基礎。

  • 這可以使您的測試更加簡潔,但意味着您無法使用SQL Sever工具之類的東西與“初始”數據庫進行交互。
  • 如果初始狀態是僅模式或很小的狀態,則在dll中嵌入“模板”將使您的部署更加靈活,並且意味着沒有人可以通過意外刪除/更改模板數據庫來意外“破壞”模板數據庫。

如果有大量數據,則幾乎可以肯定會排除嵌入式選項。

您可能想在不更改dll的情況下更改數據庫初始狀態中的重要數據嗎?

  • 也許您想按客戶自定義
  • 也許您希望能夠創建自定義部署而不生成新的內部版本。

如果是這樣,那么您可能希望文件分開而不是作為嵌入式資源。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM