2017-08-01 96 views
-2

我在第一DB一個表,我做事務複製,創建第二DB此表,但我想改變第一列名在用戶table.I改變它,但是當我插入,更新或刪除第一DB複製的表是失敗。請幫我如何更改SQL Server中訂閱者表中的列名?

+1

您是否嘗試過的研究甚至一個基本量?請使用您的確切問題標題查看此鏈接。有幾個鏈接有詳細的解釋。 https://www.google.com/search?q=How+to+change+column+name+in+subscriber+table+in+SQL+Server&ie=utf-8&oe=utf-8 –

+0

@SeanLange:是​​的,我谷歌,但我無法找到確切的答案或確切的方法來解決它 – AP4MH

+2

天哪贊一個。 https://www.mssqltips.com/sqlservertip/2396/steps-to-rename-a-subscriber-database-for-sql-server-transactional-replication/對谷歌的第二個鏈接。您的具體問題與如何解決它的詳細說明。 –

回答

2

要對事務複製用戶不同的表架構並不簡單。

首先,你必須使用自定義存儲過程來將複製更改,按Transactional Articles - Specify How Changes Are Propagated

然後,你必須運行一個腳本後,每個初始化/重新初始化重新應用架構更改,可能使用Execute Scripts During Synchronization

更簡單的替代方法是在發佈者上創建索引視圖並將其作爲表發佈。請參閱:https://docs.microsoft.com/en-us/sql/relational-databases/replication/publish/publish-data-and-database-objects

+0

我從來沒有想過我們可以修改那些存儲過程,謝謝你的鏈接 – TheGameiswar

+0

我改變了我的列名並修改了3個存儲過程sql server創建** sp_MSdel_dboUsers ** ** sp_MSins_dboUsers ** ** sp_MSup_dboUsers **只需將用戶ID更改爲ID即可,但是我不知道它的正確方法 – AP4MH

相關問題