0

假設View1基於A,B and CServer1。 使用事務複製將表A,B and C複製到Server2View1創建於Server2爲什麼'視圖'需要被複制?

ASK:
所以將視圖1在兩臺服務器上反映相同的數據(扣除複製延遲)?
如果他們這樣做,那麼我們複製Views的其他原因是什麼?
如果在發佈服務器上更改了View的腳本,那麼這些更改是否反映在訂戶上?

回答

0

那麼兩個服務器上的View1是否會反映相同的數據(折扣複製延遲)?

是,一般查詢視圖的基礎表

如果他們這樣做,那就是我們複製查看其他原因?

簡單來說,如果你想通過你需要複製視圖

如果視圖的腳本在發佈更改訪問Server2上的應用程序中使用您的看法,做的修改反映用戶?

是DDL變化都支持..

MSDN

複製支持對已發佈對象的各種模式更改。當你做任何的在微軟SQL Server發佈服務器的相應發佈對象以下架構更改,該更改默認情況下傳播到所有SQL Server訂閱服務器:

ALTER TABLE
ALTER VIEW
ALTER PROCEDURE
ALTER功能
ALTER TRIGGER
ALTER TRIGGER只能用於數據操作語言[DML]觸發器,因爲不能複製數據定義語言[DDL]觸發器。

+0

請記住,「一個VIEW'是一個*定義。」*因此,當您「複製視圖」時,您正在複製該定義*,而不是視圖在打開時包含的數據。您可以確保兩臺服務器都將執行相同的SQL *(在其各自的機器上...)*,當其中任何一臺打開該視圖時。 –

+0

...以及「DDL觸發器無法複製」的原因是因爲我們不希望它們失效!* –

+0

@MikeRobinson:是的Mike是對的。用戶表示他也將複製所涉及的表格。 – TheGameiswar