重新命名檢視
適用於: SQL Server Azure SQL 資料庫 Azure Synapse Analytics Analytics Platform System (PDW)
您可以使用 SQL Server Management Studio 或 Transact-SQL 在 SQL Server 中重新命名檢視。
警告
如果您重新命名檢視,涉及該檢視的程式碼和應用程式都會失敗。 這些包含其他檢視、查詢、預存程序、使用者定義函數,以及用戶端應用程式。 注意,這些失敗會串聯。
必要條件
- 取得檢視的所有相依性的清單。 參考檢視的任何物件、指令碼或應用程式都必須修改,以反映檢視的新名稱。 如需詳細資訊,請參閱 Get Information About a View。
- 建議您卸除檢視,並使用新名稱重新建立檢視,而不要重新命名檢視。 透過重新建立檢視,可更新檢視中所參考之物件的相依性資訊。
- 卸除和重新建立檢視會移除指派給檢視的任何細微 SQL 權限。 如果將任何細微 SQL 權限指派給檢視,您需要在重新建立檢視之後,再次將權限授與檢視。 若要在物件卸除之前擷取授與的細微權限,請參閱 sys.database_permissions (Transact-SQL) 中的範例。 若要授與權限,請參閱為主體授與權限。
權限
需要 SCHEMA 的 ALTER 權限,或 OBJECT 的 CONTROL 權限,以及資料庫的 CREATE VIEW 權限。
使用 SQL Server Management Studio
重新命名檢視
在 [物件總管]中,展開資料庫,此資料庫包含您要重新命名的檢視,然後展開 [檢視] 資料夾。
以滑鼠右鍵按一下您要重新命名的檢視,然後選取 [重新命名]。
輸入檢視的新名稱。
使用 Transact-SQL
雖然您可以使用 sp_rename
變更檢視的名稱,但建議您刪除現有的檢視,然後使用新名稱重新建立檢視。
當您使用 sp_rename
重新命名預存程序、函數、檢視或觸發程序時,sys.sql_modules 目錄檢視的定義資料行中對應物件的名稱不會變更。 這可能會導致未來混淆。 因此,我們不建議使用 sp_rename
來重新命名物件。 相反地,請卸除物件,再使用其新名稱來重新建立物件。
例如:
DROP VIEW [dbo].[vOrders];
GO
CREATE VIEW [dbo].[vOrders]
AS
<select_statement>
GO
如需詳細資訊,請參閱 CREATE VIEW (Transact-SQL) 和 DROP VIEW (Transact-SQL)。
待處理:重新命名檢視之後
- 確定參考檢視舊名稱的任何物件、指令碼和應用程式現在都使用新名稱。
- 卸除和重新建立檢視會移除指派給檢視的任何細微 SQL 權限。 如果將任何細微 SQL 權限指派給檢視,您需要在重新建立檢視時,再次將權限授與檢視。 若要在物件卸除之前擷取授與的細微權限,請參閱 sys.database_permissions (Transact-SQL) 中的範例。 若要授與權限,請參閱為主體授與權限。