如何:在同步處理期間執行指令碼 (複寫 Transact-SQL 程式設計)
複寫可支援視需要針對交易式與合併式發行集的訂閱者執行指令碼。這項功能會將指令碼複製到複寫工作目錄,然後使用 sqlcmd 將指令碼套用到訂閱者。依預設,如果針對交易式發行集的訂閱套用指令碼時發生失敗,則散發代理程式將會停止。您可以使用複寫預存程序以程式設計的方式指定要執行的 Transact-SQL 指令碼。
針對快照式、交易式或合併式發行集的所有訂閱者指定要執行的指令碼
撰寫及測試將會視需要執行的 Transact-SQL 指令碼。
將指令碼檔案儲存到可由發行集之快照集代理程式存取的位置。
在發行集資料庫的發行者上,執行 sp_addscriptexec (Transact-SQL)。指定 @publication,並針對 @scriptfile 指定步驟 2 中建立之具有完整 UNC 路徑的指令碼檔案名稱及針對 @skiperror 指定下列其中一個值:
0 - 如果遇到錯誤,代理程式將會停止執行指令碼。
1 - 如果遇到錯誤,代理程式將會記錄錯誤並繼續執行指令碼。
當下一次執行代理程式來同步處理訂閱時,指定的指令碼將會在每一個訂閱者上執行。