共用方式為


控制同步處理期間觸發器和約束條件的行為(複製 Transact-SQL 程式設計)

在同步處理期間,復寫代理程式會在復寫數據表上執行 INSERT (Transact-SQL)UPDATE (Transact-SQL)DELETE (Transact-SQL) 語句,這可能會導致在這些數據表上執行數據作語言 (DML) 觸發程式。 在某些情況下,您可能需要避免這些觸發器在同步處理期間被觸發或限制條件被強制執行。 此行為取決於觸發程式或條件約束的建立方式。

防止觸發程式在同步處理期間執行

  1. 建立新的觸發程式時,請指定 CREATE TRIGGER (Transact-SQL) 的 NOT FOR REPLICATION 選項。

  2. 針對現有的觸發程式,指定 ALTER TRIGGER (Transact-SQL) 的 NOT FOR REPLICATION 選項。

防止在同步處理期間強制執行條件約束

  1. 建立新的 CHECK 或 FOREIGN KEY 條件約束時,請在 CREATE TABLE (Transact-SQL) 的條件約束定義中指定 CHECK NOT FOR REPLICATION 選項。

另請參閱

建立資料表 (Database Engine)