:SQL修改字段長度 阻止保存要求重新創建表的更改
SQL server修改表錯誤提示:“阻止保存需要重新創建表的更改”
解決方法如下:
打開 SQL Server Management Studio(SSMS)。
在“工具”菜單上,單擊“選項”。
在選項窗口的導航窗格中,單擊設計器。
選中或取消選中阻止保存需要重新創建表的更改復選框,然后單擊確定。
備注!
如果禁用此選項,則在保存表時不會收到所做更改已更改表的元數據結構的警告。 在這種情況下,保存表時可能會發生數據丟失
關閉“阻止保存需要重新創建表的更改”選項的風險
雖然關閉此選項有助于避免重新創建表,但也可能導致更改丟失。 例如,假設在 SQL Server 中啟用“更改跟蹤”功能來跟蹤對表所做的更改。 執行導致重新創建表的操作時,會收到癥狀部分中提到的錯誤消息。 但是,如果關閉此選項,則在重新創建表時會刪除現有的更改跟蹤信息。 因此,建議不要通過關閉此選項來解決此問題。
若要確定是否為表啟用了“更改跟蹤”功能,請執行以下操作:
在 SQL Server Management Studio 中,在“對象資源管理器”中找到表。
右鍵單擊表,然后單擊“屬性”。
在“表屬性”對話框中,單擊“更改跟蹤”。 如果“更改跟蹤”項的值為“真”,則表已啟用了此選項。 如果值為“假”,則表示已禁用此選項。
啟用該Change Tracking功能后,使用 Transact-SQL 語句更改表的元數據結構。
重現問題的步驟
在 SQL Server Management Studio 中,在“表設計器”工具中創建包含主鍵的表。
右鍵單擊包含此表的數據庫,然后單擊“屬性”。
在“數據庫屬性”對話框中,單擊“更改跟蹤”。
將“更改跟蹤”項的值設置為“True”,然后單擊“確定”。
右鍵單擊此表,然后單擊“屬性”。
在“表屬性”對話框中,單擊“更改跟蹤”。
將“更改跟蹤”項的值設置為“True”,然后單擊“確定”。
在“工具”菜單上,單擊“選項”。
在“選項”對話框中,單擊“設計器”。
單擊以選中“防止保存需要重新創建表的更改”復選框,然后單擊“確定”。
在“表設計器”工具中,更改現有列上的“允許為 Null”設置。
嘗試將更改保存到表中。
該文章在 2023/9/11 14:35:35 編輯過