2015-05-11 26 views
1

當配置新的合併複製,設置所有項目的屬性時,我遇到問題。在目標對象 - >如果名稱正在使用,我可以選擇四個不同的選項。我試圖弄清楚每一個是什麼。我沒有找到任何關於它,它們分別是:如果名稱正在使用,SQL Server複製操作問題

  • 保持現有對象不變
  • 刪除已有的對象,並創建一個新的
  • 刪除數據。如果文章具有行篩選器,則只刪除與篩選器匹配的數據。
  • 截斷現有對象中的所有數據

回答

1

項目屬性行動,如果名稱正在使用關聯到的sp_addmergearticle@pre_creation_cmd說法:

指定系統是什麼在應用快照時,如果表格存在於 訂閱者處。 pre_creation_cmd是 nvarchar(10),可以是以下值之一。

- 如果該表已存在於訂閱服務器上,則不採取任何操作。

刪除 - 根據子集過濾器中的WHERE子句發出刪除。

drop(默認) - 在重新創建表之前刪除表。用於支持Microsoft SQL Server Compact訂戶。

truncate - 截斷目標表。

+0

我有這個問題。「來源:Microsoft SQL Server的本機客戶端11.0 編號:3726 消息:無法刪除對象‘dbo.eqp_Equipment’,因爲它是由一個外鍵約束引用」 ...如果我選擇「截斷」將解決問題?我現在就做,我會發布我的結果。 –

+0

我無法更改sp_changemergearticle ...它返回一個錯誤「Property'pre_creation_command'文章'myArticle'無法更改。」。我正在重新創建合併複製...我會發布如果它的工作或沒有:) –

+0

它沒有工作...我仍然得到相同的錯誤=(...實際上它有點改變「 不能截斷表'dbo.eqp_Equipment',因爲它被一個FOREIGN KEY約束所引用。(來源:MSSQLServer,錯誤號:4712)「 –