重新命名資料庫物件的所有參考

您可以使用「資料庫重構」(Database Refactoring),更快速而精確將參考更新至重新命名的「資料庫物件」(Database Object)。 如果您將「資料庫專案」中的資料庫物件重新命名,也必須更新該物件的所有參考,才會參考它的新名稱。 例如,參考您已重新命名資料表資料行的任何預存程序,都必須更新。

您可以使用重構來更新整個資料庫專案的參考,而不必手動追蹤哪些物件彼此相依,然後一次更新一個參考。 即使您使用 sp_depends 來尋找相依性,也不一定能精確的擷取這項資訊,而且您還是必須更新每一個參考。

您可以使用重構來自動重新命名下列類型的物件:

  • 資料表

  • 資料表中的資料行、檢視表和函式

  • 預存程序參數

您也可以使用重構來更新資料產生計劃、指令碼和單元測試。 如需詳細資訊,請參閱重新命名資料庫物件前的考量

根據預設,其定義會造成一個或多個警告或錯誤之物件,重構並不會更新這些物件。 此外,重構並不會自動更新 .sql 檔案的名稱,該檔案內含您已重新命名的物件之定義。 您可以在 [方案總管] 中手動重新命名該檔案。

重新命名重構的其他用途

您也可以使用重新命名重構,來執行下列的一般工作:

  • 在不區分大小寫的環境中,您可以變更物件名稱及其所有參考的大小寫,以符合組織的大小寫慣例。 例如,資料庫專案可能混合 "Myid" 和 "MyID" 的參考,您可以使用重新命名重構將所有參考變更為 "MyID"。

    注意事項注意事項

    已經是正確大小寫的參考也會被更新 (更新為相同的值)。 如果包含那些參考的檔案已受版本控制,在重構作業的過程中會將該檔案簽出。

  • 您可以重新命名兩個以上的物件,使其名稱與參考相符。 例如,您可以合併兩個結構描述名稱,例如 "Person" 和 "Person Name"。 您也可以在區分大小寫的環境中,合併兩個只有大小寫不同的名稱,例如 "MyID" 及 "Myid"。

  • 您可以在結構描述物件名稱及其所有參考的前後加上方括號,以遵循物件命名的最佳做法。 例如,您可以用 "[MyID]" 取代 "MyID" 的所有參考。

    注意事項注意事項

    已經以方括號括住的參考也會被更新 (更新為相同的值)。 如果包含那些參考的檔案已受版本控制,在重構作業的過程中會將該檔案簽出。

當您執行這些工作時,將出現錯誤訊息警告您,已有相同名稱的物件。 您必須按一下 [],以進行變更。 然而,如果在 [重新命名] 對話方塊中已選取 [預覽變更] 核取方塊,您便可以預覽並排除個別變更。

使用重構記錄保留原意

當您重新命名資料庫物件時,資料庫專案的重構記錄中會加入一個項目。 當您部署變更時,這個記錄可以確保目標環境中的對應物件會按照您的原意重新命名。 否則會放棄現有的物件,並以新的名稱來加入物件。 記錄會留在 XML 檔案中,名稱為 ProjectName.refactorlog。 當您簽入組成資料庫專案的其他檔案時,也會將這個檔案簽入至您的版本控制系統。 ProjectName.refactorlog 檔案只包含部署期間需要特殊處理之重構作業的相關資訊。

部署

使用重構時,只更新資料庫專案,而不更新實際執行資料庫。 遵循這項策略可讓您得到資料庫專案的所有優點,包括版本控制和小組開發。 當您建置資料庫專案時,所有的重構記錄檔都會合併至專案的 \sql 資料夾內的 transaction.refactorlog 檔案中。 當您部署變更時,合併的重構記錄檔案會幫助您保留原本變更資料庫專案的意圖。

如需詳細資訊,請參閱建置和部署資料庫到隔離的開發環境

注意事項注意事項

在小組環境中,您應該先執行應用程式和「資料庫單元測試」(Database Unit Test),然後再將您的變更部署到實際執行伺服器。 如需詳細資訊,請參閱開始進行小組資料庫開發

重新命名之前的考量

在重新命名資料庫專案的參考之前,如果下列陳述為真,您應該了解一些其他的考量:

  • 您要在檢視中重新命名資料行。

  • 您要重新命名資料庫專案中的物件,該專案內含一個或多個錯誤,使其無法順利建置。

  • 您開啟了一個尚未儲存的資料產生計劃。

  • 您的專案中有一個資料產生計劃是使用資料繫結產生器。

  • 您的資料庫單元測試未使用完整的名稱,及其他結構描述或資料庫中的測試參考物件。

  • 您的專案中有資料庫指令碼未使用完整的名稱,及其他結構描述或資料庫中的指令碼參考物件。

如需這些案例的特殊考量詳細資訊,請參閱重新命名資料庫物件前的考量

一般工作

下表列出支援此案例之一般工作的說明,以及詳細資訊的連結,這些資訊可幫助您成功完成這些工作。

工作

支援主題

獲得實務經驗:您可以依照逐步解說執行,開始熟悉除了其他類型的重構之外,如何將資料庫物件移至不同的結構描述。 您也可以在完成入門逐步解說後,了解如何在資料庫開發存留期間使用重構。

重新命名資料庫物件:您可以使用重構來變更資料庫專案中資料庫物件的所有參考。 您可以在套用變更之前預覽內容,做為重構作業的一部分。

復原重構作業:如果您認為必須復原重構作業,您可以在 Visual Studio 的目前工作階段中復原該重構作業。

部署資料庫重構變更:當您重構資料庫專案後,必須將這些變更部署到目標資料庫。 通常您會先將變更部署至「隔離的開發環境」(Isolated Development Environment) 進行測試,然後再簽入至版本控制。

疑難排解問題:您可以了解如何透過資料庫重構疑難排解常見的問題。

相關案例

重新命名伺服器或資料庫的參考

將資料庫物件移至其他結構描述

提供資料庫物件的完整名稱

在 SELECT 陳述式中展開萬用字元

請參閱

概念

重構資料庫程式碼和資料

資料庫和伺服器專案概觀