在本课中,你将使用 SQL Server Management Studio 创建合并发布,以在 AdventureWorks2012 示例数据库中发布 Employee、SalesOrderHeader 和 SalesOrderDetail 表的子集。 这些表使用参数化行筛选器进行筛选,以便每个订阅都包含数据的唯一分区。 您还将把合并代理所用的 SQL Server 登录名添加到发布访问列表(PAL)。 本教程要求已完成上一教程: 准备服务器进行复制。
创建出版物并定义文章
在 SQL Server Management Studio 中连接到发布者,然后展开该服务器节点。
展开 “复制 ”文件夹,右键单击 “本地发布”,然后单击“ 新建发布”。
发布配置向导已启动。
在“发布数据库”页上,选择 AdventureWorks2012,然后单击“ 下一步”。
在“发布类型”页上,选择“ 合并发布”,然后单击“ 下一步”。
在“订阅服务器类型”页上,确保仅选择了 SQL Server 2008 或更高版本,然后单击“ 下一步”。
在“文章”页上,展开表节点,选择SalesOrderHeader和SalesOrderDetail,然后展开Employee,选择EmployeeID或LoginID,最后单击下一步。
小窍门
会自动选择其他必需的列。 选择任意自动选择的列,并查看 Objects to publish 列表下方的注释,了解为什么需要该列的说明。
在“筛选表行”页上,单击“ 添加 ”,然后单击“ 添加筛选器”。
在“添加筛选器”对话框中,在“选择要筛选的表”中选择“员工”(HumanResources),单击 LoginID 列,单击右箭头,将列添加到筛选器查询的 WHERE 子句,并按如下所示修改 WHERE 子句:
WHERE [LoginID] = HOST_NAME()单击 此表中的一行将仅转到一个订阅,然后单击确定。
在筛选表行页上,单击员工(人力资源),单击添加,然后单击添加联接以扩展所选筛选条件。
在“添加联接”对话框中,选择“联接表”下的 Sales.SalesOrderHeader,手动单击“写入联接”语句,然后完成联接语句,如下所示:
ON Employee.EmployeeID = SalesOrderHeader.SalesPersonID在 “指定联接选项”中,选择 “唯一”键,然后单击“ 确定”。
在“筛选表行”页上,单击“ SalesOrderHeader”,单击“ 添加”,然后单击“ 添加联接”以扩展所选筛选器。
在“添加联接”对话框中,选择“联接”表下的 Sales.SalesOrderDetail。
单击“手动写入联接语句”。
在 筛选表列中,选择 BusinessEntityID,然后单击箭头按钮将列名复制到 loin 语句。
在 Join 语句 框中,完成联接语句,如下所示:
ON Employee.BusinessEntityID = SalesOrderHeader.SalesPersonID在 “指定联接选项”中,选择 “唯一”键,然后单击“ 确定”。
在“筛选表行”页上,单击“SalesOrderHeader”(Sales),单击“添加”,然后单击“添加联接以扩展所选筛选器”。
在“添加联接”对话框中,选择“联接”表下的 Sales.SalesOrderDetail,单击“确定”,然后单击“下一步”。
选择 “立即创建快照”,清除 “计划快照代理”以在以下时间运行,然后单击“ 下一步”。
在“代理安全”页上,单击“安全设置”,在><“进程帐户”框中键入Machine_Name\repl_snapshot,提供此帐户的密码,然后单击“确定”。 单击“完成”。
在“完成向导”页上,在“发布名称”框中输入 AdvWorksSalesOrdersMerge,然后单击“完成”。
创建发布后,单击“ 关闭”。
查看快照生成的状态
在 SQL Server Management Studio 中连接到发布服务器,展开服务器节点,然后展开 “复制 ”文件夹。
在“本地发布”文件夹中,右键单击 AdvWorksSalesOrdersMerge,然后单击“ 查看快照代理状态”。
发布的快照代理作业当前状态已显示。 在继续下一课之前,请确保快照作业已成功。
将合并代理登录名添加到 PAL
在 SQL Server Management Studio 中连接到发布服务器,展开服务器节点,然后展开 “复制 ”文件夹。
在“本地发布”文件夹中,右键单击 AdvWorksSalesOrdersMerge,然后单击“ 属性”。
将显示“ 发布属性 ”对话框。
选择“ 发布访问列表 ”页,然后单击“ 添加”。
在“添加发布访问”对话框中,选择 <Machine_Name\repl_merge> 并单击“ 确定”。 单击 “确定” 。
后续步骤
已成功创建合并的出版物。 接下来,你将订阅此刊物。 请参阅 第 2 课:创建合并发布的订阅。