當我嘗試更改我的表的數據類型時,我從SQL Management Studion獲得這個可怕的消息:「保存更改是不允許的。要求下列表格被刪除並重新創建「。我已經試圖通過T-SQL進行修改,並且它已經工作,但爲什麼我不能通過設計模式來做到這一點?我正在使用SQL Server 2008 R2。保存更改是不允許的。您所做的更改需要刪除並重新創建以下表格
回答
我強烈建議您使用T-SQL進行更改,或者至少預覽設計人員在提交之前生成的腳本。但是,如果您想在設計器中執行此操作,則可以轉至工具...選項...設計師..表格和數據庫設計器,然後取消選中「創建」。
由於某種原因,該鎖默認開啓;它使您不會犯一些被設計師混淆的變化。
編輯:如下面的註釋中所述,除非您禁用鎖定,否則無法預覽更改。我的觀點是,如果您想要使用表格設計器在禁用此功能的表格上工作,則應確保在提交更改之前始終預覽這些更改。總之,選項有:
- 最佳工藝:使用T-SQL
- 不是很大:禁用鎖定,用表 設計,始終預覽改變
- 瘋話:點擊幾個按鈕。
你可以添加你應該如何「預覽設計器生成的腳本」?右鍵單擊和生成腳本嘗試再次保存。重點是什麼? – makhdumi
要更改需要表重新創建選項防止保存更改,請按照下列步驟操作: 打開SQL Server Management Studio中(SSMS)。 在工具菜單上,單擊選項。 在「選項」窗口的導航窗格中,單擊設計師。 選擇或清除「禁止保存需要重新創建表的更改」複選框,然後單擊「確定」。
只需添加Stuart Ainsworth的說法,您可以在SSMS設計器窗口中右鍵單擊並在編輯後選擇「生成更改腳本...」選項,以生成並查看設計人員創建的腳本你的改變。
如果鎖仍處於開啓狀態,則會導致相同的錯誤。一旦他們離開,就工作。 – RyanfaeScotland
- 1. Gridview更新,刪除操作需要更改保存按鈕
- 2. 「禁止保存需要的表更改重新創建」負面影響
- 3. 允許用戶創建和更改表?
- 4. 將現有列更改爲空時「保存更改不允許」
- 5. 刪除允許空複選框,,要求重新創建表
- 6. 防止刪除並允許更新
- 7. 將javascript所做的更改保存到表格(gridview)
- 8. mysql - 更新,刪除,更改,重命名,創建,修復=消失
- 9. 如果我更改requirements.txt,是否需要徹底刪除並重新創建我的beanstalk應用程序?
- 10. Eclipse需要重新啓動以查看對應用程序所做的更改
- 11. SQL。更改要求重新創建表格
- 12. Source Safe 2005是否允許您在登入時更改格式?
- 13. 可編輯表格並保存更改
- 14. 實體框架不保存對錶格所做的所有更改
- 15. NHibernate動態創建/更改/刪除表
- 16. 需要定期刪除並重新創建存儲過程?
- 17. P4 Perforce取消刪除或重新創建刪除更改列表
- 18. Eclipse的新更新不允許創建AVD甚至按下OK?
- 19. 保存並不更新「修改」字段
- 20. 不允許更改document.domain值
- 21. 刪除git commit,保持文件不變(不要刪除更改)
- 22. 在運行時更改Delphi樣式不允許將文件刪除到表格
- 23. GIT重置分支並刪除合併後的所有更改
- 24. Listview獲取重新創建並更改以前的視圖
- 25. 您是否需要更改以PHP結尾的HTML文檔
- 26. 更新表或刪除並重新創建?
- 27. 爲什麼在保存更改後需要更新Radiant CMS?
- 28. Javascript ES6常數可以在不允許的情況下更改
- 29. 如果您更改WCF服務您是否還需要更改客戶端?
- 30. Subversion - 在刪除/重新創建目錄後協調更改
這裏有一個答案:http://stackoverflow.com/questions/6810425/saving-changes-is-not-permitted-in-sql-server –
表結構的變化應該腳本化並保存在源代碼管理像所有其他代碼一樣。切勿爲此使用設計器。改變表格不需要刪除和重新創建表格,設計師可以。 – HLGEM