簡體   English   中英

更改SQL Server 2008 R2中的復制列。 合並復制

[英]ALTER a replicated column in SQL Server 2008 R2. Merge Replication

我想更改StudentPerformance表中的列

要更改的列是-

StudentName varchar(50) to StudentName varchar(100)
Percentage decimal(18,0) to Percentage decimal(18,2)

配置為進行合並復制。

  • 它會使我當前的快照過時嗎?
  • 我需要重新初始化所有訂閱嗎?
  • 它會更新表中的所有記錄,並且在運行alter語句時會增加復制的流量嗎?

您將需要在發布服務器上使用ALTER TABLE ALTER COLUMN語法執行此操作。 默認情況下,架構更改將在下一次同步時傳播,發布屬性@replicate_ddl必須設置為true。 在大多數情況下,不需要新的快照或重新初始化。

例如,可以通過在發布數據庫上執行,將SalesLT.Customer Title列從nvarchar(8)null更改為nvarchar(10)null。

ALTER TABLE SalesLT.Customer ALTER COLUMN Title NVARCHAR(10) NULL 

在大多數情況下,架構更改將在下一次同步時復制出來, 在發布數據庫上進行架構更改中涵蓋了一些例外。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM