檔案和檔案群組的概觀
藉由定義和使用額外的檔案群組,您可以改善資料庫效能,並更佳管理「資料庫物件」(Database Object) 的備份和還原方式。 例如,您可以針對不同實體磁碟定義檔案群組以降低存取時間。 如果將「結構描述」(Schema) 中的所有資料庫物件與特定檔案群組建立關聯,接著就可以將這些物件一起備份和還原。 如需檔案群組的詳細資訊,請參閱 Microsoft 網站上的檔案與檔案群組架構主題。
![]() |
---|
如果您是使用資料層應用程式 (DAC) 專案,便無法定義檔案或檔案群組。 如果想要控制資料庫中的檔案和檔案群組,必須使用 .dbschema 資料庫專案。 |
行為
定義「資料庫專案」(Database Project) 的檔案和檔案群組前,您應該考慮下列行為類型,這樣才能辨別預期行為與未預期問題間的差異。
匯入結構描述
從現有的資料庫匯入結構描述時,也會匯入該資料庫的檔案和檔案群組定義。
比較結構描述
藉由比較結構描述,您可以判斷是否有在不同名稱的檔案群組上建立同名物件。 您也可以判斷在「來源」(Source) 中是否有加入或移除檔案群組,而「目標」(Target) 上卻沒有。 如需如何比較結構描述的詳細資訊,請參閱 HOW TO:比較資料庫結構描述。
建置和部署資料庫專案
您無法讓檔案和檔案群組專屬於某特定組建組態。 但是您可以使用 MSBuild 變數的方式定義檔案,而變數就可以專屬於某個組態。 例如,您可以藉由這個方法在「隔離的開發環境」(Isolated Development Environment) 上使用與開發用伺服器 (Staging Server) 上不同的路徑和檔名。
刪除檔案群組、檔案和記錄檔
如果從資料庫專案刪除檔案群組,您可以將該變更部署到新資料庫,但如果部署的是現有的資料庫,就會忽略變更。 從資料庫專案刪除檔案群組時,也會刪除與該檔案群組關聯的所有檔案。 針對屬於您刪除的檔案群組中的每個資料庫專案物件,都會出現錯誤狀態。 若要解決這個錯誤,必須重新建立檔案群組,或者是修改這些物件定義,讓它們與其他檔案群組建立關聯。 在這些情況下,直到解決這些錯誤前,您都無法部署資料庫專案。
您不能刪除主要檔案群組。 您必須永遠有指定的預設檔案群組。 如果移除檔案群組中的唯一檔案,[錯誤清單] 視窗會出現警告,指出檔案群組定義不完整。 此外,您也不能移除資料庫專案中唯一的記錄檔。 資料庫專案永遠必須定義有至少一個記錄檔。
使用限制
當部署檔案群組變更、重新命名檔案群組,或定義唯讀檔案群組中的資料庫物件時,您可能會遇到下列限制。
部署變更
在資料庫專案中加入檔案群組時,您可以將該變更部署到新的或現有的資料庫中。 如果是刪除檔案群組或者是修改其檔案或屬性,則可以將這些變更部署到新的資料庫中。 但是,如果是將專案部署到現有的資料庫,就會忽略檔案群組的刪除和修改。 如果資料庫專案中的檔案群組名稱符合目標上的檔案群組名稱,就會假設這兩個檔案群組是相同的。
如果重新命名檔案群組然後再部署到現有資料庫中,就會建立新名稱的檔案群組,而不會變更現有的檔案群組。
重新命名物件定義中的檔案群組
您可以使用「資料庫重構」(Database Refactoring) 更新資料庫物件定義中的檔案群組名稱。 如需詳細資訊,請參閱重新命名資料庫物件的所有參考。
定義唯讀檔案群組中的物件
即使選取了檔案群組的 [唯讀] 核取方塊,仍可以在資料庫專案中定義該檔案群組的物件。 但如果嘗試將這些變更部署到現有資料庫時,這項作業就會失敗產生錯誤。 而將這些變更部署到新的資料庫時,就會跟清除 [唯讀] 核取方塊時一樣建立物件。 建立物件後,檔案群組在資料庫中會設定為唯讀。
使用資料層應用程式
如果您建立資料層應用程式專案,便無法定義該專案的檔案或檔案群組。 此外,如果將資料庫專案轉換為 DAC 專案,該資料庫專案中已定義的任何檔案和檔案群組都會造成錯誤。 如需詳細資訊,請參閱在資料層應用程式專案與資料庫專案之間轉換。