我有一個數據庫運行在Sql server 2005合併複製。我想將一些FK列更改爲'非空',因爲它們應該始終具有值。 SQL服務器將不會讓我做,雖然,這是它說:更改列約束空/非空= rowguid複製錯誤
- 無法修改表。在 合併複製使用的rowguid列上放置默認約束 是無效的。在執行內部 複製過程期間,模式更改 失敗。要糾正 操作,請參閱伴隨此錯誤消息的其他錯誤消息 。交易在觸發器中結束。 批次已被中止。
我不試圖改變限制在ROWGUID列可言,僅在與充當FK另一列。我想設置的其他列不爲空,因爲如果沒有這些信息(即客戶名稱,客戶名稱),記錄就沒有任何意義。
問題: 有沒有一種方法來更新列是「NOT NULL」而不關閉複製,然後再次打開它? 這是甚至是做到這一點的最佳方式 - 我應該使用約束嗎?