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