共用方式為


第1課:使用合併式複製發佈資料

在這一課,您將使用 SQL Server Management Studio 建立合併式發行集,以在 AdventureWorks2012 範例資料庫中發佈 EmployeeSalesOrderHeader 和 SalesOrderDetail 數據表的子集。 這些數據表會使用參數化數據列篩選來篩選,讓每個訂用帳戶都包含數據的唯一分割區。 您也會將合併代理程式所使用的 SQL Server 登入新增至發行集存取清單 (PAL)。 本教學課程要求您已完成先前的教學課程 準備伺服器以便進行複製

建立出版物並定義文章

  1. 連線到 Microsoft SQL Server Management Studio 的發行者,然後展開伺服器節點。

  2. 展開 [復寫] 資料夾,以滑鼠右鍵點擊 [本機發行集],然後點擊 [新增發行集]。

    出版設定精靈啟動。

  3. 在 [發行集資料庫] 頁面上,選取 [AdventureWorks2012],然後按 [ 下一步]。

  4. 在 [發行集類型] 頁面上,選取 [ 合併式發行集],然後按 [ 下一步]。

  5. 在 [訂閱者類型] 頁面上,確定只選取 [SQL Server 2008 或更新版本],然後按 [ 下一步]。

  6. 在 [Articles] 頁面上,展開 [數據表] 節點,選取 [SalesOrderHeader] 和 [SalesOrderDetail],然後展開 [員工],選取 [EmployeeID] 或 [LoginID],然後按 [下一步]

    小提示

    系統會自動選取其他必要數據行。 選取任何自動選取的數據行,並檢視 [ 要發佈的物件 ] 清單下方的附註,以取得為何需要數據行的說明。

  7. 在 [篩選數據表數據列] 頁面上,按兩下 [ 新增 ],然後按下 [ 新增篩選]。

  8. 新增篩選 對話框中,選擇 員工 (HumanResources)選取要篩選的數據表,按一下 LoginID 欄,按一下向右箭頭,将该欄新增至篩選查詢的 WHERE 子句,並如下所示修改 WHERE 子句:

    WHERE [LoginID] = HOST_NAME()  
    
  9. 按兩下 此資料表中的數據列只會移至一個訂用帳戶,然後按兩下 [ 確定]。

  10. 在 [ 篩選數據表數據列 ] 頁面上,按兩下 [員工] [人力資源],按兩下 [ 新增], 然後按兩下 [ 加入聯結] 以擴充選取的篩選

  11. 在 [加入聯結] 對話框中,選取 [聯結數據表] 底下的 [Sales.SalesOrderHeader],按兩下 [手動寫入聯結語句],然後完成聯結語句,如下所示:

    ON Employee.EmployeeID = SalesOrderHeader.SalesPersonID  
    
  12. [指定聯結選項] 中,選取 [唯一索引鍵],然後按兩下 [ 確定]。

  13. 在 [篩選數據表數據列] 頁面上,按一下 [SalesOrderHeader],按一下 [新增],然後按一下 [新增聯結] 以擴充選取的篩選

  14. 在 [加入聯結] 對話框中,選取 [聯結數據表] 底下的 [Sales.SalesOrderDetail]。

  15. 按兩下 [手動寫入聯結語句]。

  16. [篩選的數據表數據行] 中,選取 [BusinessEntityID],然後按兩下箭號按鈕,將數據行名稱複製到loin語句。

  17. 在 [ Join 語句 ] 方塊中,完成 join 語句,如下所示:

    ON Employee.BusinessEntityID = SalesOrderHeader.SalesPersonID  
    
  18. [指定聯結選項] 中,選取 [唯一索引鍵],然後按兩下 [ 確定]。

  19. 篩選表格列 頁面上,按一下 SalesOrderHeader (Sales),然後按一下 新增,再按一下 加入聯結以擴展所選篩選

  20. 在 [加入聯結] 對話框中,選取 [聯結數據表] 底下的 [Sales.SalesOrderDetail],按兩下 [確定],然後按 [下一步]。

  21. 選取 [立即建立快照],清除 [排程快照集代理程式在下列時間執行],然後按 [下一步]

  22. 在 [代理程式安全性] 頁面上,按兩下 [安全性設定],在 [處理帳戶] 方塊中輸入<Machine_Name>\repl_snapshot,提供此帳戶的密碼,然後按兩下 [確定]。 按一下完成

  23. 在 [完成精靈] 頁面上,於 [發行集名稱] 方塊中輸入 AdvWorksSalesOrdersMerge,然後按兩下 [完成]。

  24. 建立發行集後,按一下 關閉

檢視快照產生的狀態

  1. 連接至 SQL Server Management Studio 中的發行者,展開伺服器節點,然後展開 複寫 資料夾。

  2. 在 [本機發行集] 資料夾中,以滑鼠右鍵按一下 [AdvWorksSalesOrdersMerge],然後按一下 [檢視快照代理程序狀態]。

  3. 發行集的快照代理程序作業的目前狀態已顯示。 請確定快照集作業已成功,再繼續進行下一課。

將合併代理程式的登入帳號新增至 PAL

  1. 連接至 SQL Server Management Studio 中的發行者,展開伺服器節點,然後展開 複寫 資料夾。

  2. 在本機出版物資料夾中,以滑鼠右鍵點一下 AdvWorksSalesOrdersMerge,然後按一下 屬性

    [ 發行集屬性 ] 對話框隨即顯示。

  3. 選取 [ 發行集存取清單] 頁面,然後按兩下[ 新增]。

  4. 在 [新增發行集存取] 對話框中,選取 <Machine_Name>\repl_merge 並按一下 確定。 按一下 [確定]

後續步驟

您已成功建立合併出版物。 接下來,您將訂閱此發行集。 請參閱 第 2 課:建立合併出版物的訂閱項目

另請參閱

篩選已發佈的數據
參數化資料列篩選器
定義文章