2012-11-13 120 views
3

我在我的數據庫中有一個junction/many to many表。這個表格有2列形成一個複合主鍵; userid & groupid。如何同步以前刪除的行

我遇到了一個問題,一旦一行被刪除,它永遠不能重新添加和再次同步。例如:

  1. 用戶123被添加到組456同步更改,上傳 方向。行被添加到遠程。
  2. 用戶123從組456中移除(在表元行中墓碑行和從基表中移除的行)
  3. 更改同步,上傳方向。行被刪除遠程
  4. 用戶123被添加到組456
  5. 更改同步,上傳 方向。行未插入遠程。

我在猜測範圍知識保留了這樣一個事實,即該行一旦被刪除並且不會同步對其進行更改?這種理解是否正確?無論如何要清除這些知識?

回答

0

如果任何關鍵列有IDENTITY屬性集,那麼您不能簡單地在這樣的列中插入值。你應該明智地使用這個屬性 - 它的想法確保密鑰不會重複。

因此,如果您確實需要將值插入IDENTITY列,請使用SET IDENTITY_INSERT MyTable ON/OFF。數據庫中只有一個表可以將此屬性設置爲ON。如果它關閉 - 發生錯誤。

CREATE TABLE MyTable (ID INT IDENTITY NOT NULL) 
SET IDENTITY_INSERT MyTable ON/OFF 
INSERT INTO MyTable VALUES (2) 
SET IDENTITY_INSERT MyTable ON/OFF