Sql-Server-2008-R2

如果更改滿足綁定要求,我可以更改使用模式綁定引用的視圖嗎?

  • February 9, 2018

在 SQL Server 2008 中,我有視圖WITH SCHEMABINDING,我需要更改一個。

我正在更改列而不更改其別名,因此消費者不會受到影響。

如果我要刪除依賴於此的所有其他視圖,我將能夠再次重新創建它們,所以SCHEMABINDING仍然有效。

我可以暫時禁用此視圖上的模式鎖定ALTER嗎?

或者我必須刪除依賴視圖並在更改後重新創建它們?

您不需要刪除依賴視圖,但您確實需要將它們更改為(暫時)不是模式綁定。如果其中任何一個被索引,這意味著您將需要重新創建索引。

SQL Server 沒有用於架構綁定的加權系統:您不能更改對象。時期。

ALTER VIEW dbo.view_name
--Remove this WITH SCHEMABINDING
AS
 SELECT ...

引用自:https://dba.stackexchange.com/questions/58801