首頁>Program>source

如果我想在表中儲存任何更改,以前儲存在SQL Server Management Studio中(表中没有資料),我会收到一條錯誤訊息:

Saving changes is not permitted. The changes you have made require the following tables to be dropped and re-created. You have either made changes to a table that can't be re-created or enabled the option Prevent saving changes that require the table to be re-created.

是什麼匯致表格無法轻松編輯? 還是SQL Server Management Studio要求重新建立表进行編輯的通常方法? 這是什麼-這个 "option Prevent saving changes"

最新回復
  • 5月前
    1 #

    进入工具->選項->設計器->取消選中"防止儲存需要重新建立表的更改".瞧!

    之所以会發生這種情况,是因為有時必须删除並重新建立表才能更改某些內容.這可能需要一段時間,因為所有資料都必须複製到臨時表中,然後重新插入到新表中.由於預設情况下SQL Server不信任您,因此您需要說"好吧,我知道我在做什麼,現在让我来做我的工作。"

  • 5月前
    2 #

    工具>選項

    取消選中以上選項

  • 5月前
    3 #

    要變通解決此問题,請使用SQL語句對表的元資料結構进行更改。

    "Prevent saving changes that require table re-creation"時出現此問题 選項已啟用。

    源:当您尝試在SQL Server 2008中儲存表時出現錯誤訊息:"不允许儲存更改"

  • 5月前
    4 #

    而不是取消選中该框(一个较差的解決方案),應该停止編輯資料 那樣.如果必须更改資料,請使用指令碼进行處理,以便您可以轻松地將其移植到生产環境中,並在源代碼控製下.這也使得在將产品推向開發人員之後更容易重新整理測試更改,从而使開發人員能够處理更新的資料.

  • 5月前
    5 #

    您可以在SQL Server Management Studio的表編輯器中轻松,直观地进行许多更改,這些更改實際上要求SSMS將表放在後台並从頭開始重新建立.甚至對列进行重新排序之類的簡單操作也無法在標準SQL DDL語句中表達-SSMS所能做的就是删除並重新建立表。

    此操作可能是a)在大型表上非常耗時,或者b)甚至由於各種原因(例如FK約束和填充)而失败.因此,SQL Server 2008中的SSMS引入了该新選項,其他答案已经確定。

    起初,防止此類更改可能似乎违反直覺-並且對於開發服務器当然是很麻煩的.但是在生产服務器上,此選項及其防止此類更改的預設值可能会节省生命!

  • android:在AndroidStudio中生成簽名的apk時,簽名版本之間的區別-V1(Jar簽名)和V2(完整APK簽名)?
  • smtp:通過C#通過Google Apps帐戶發送電子郵件