控制同步期间触发器和约束的行为(复制 Transact-SQL 编程)
在同步期间,复制代理对复制表执行INSERT (Transact-SQL)、UPDATE (Transact-SQL) 和 DELETE (Transact-SQL) 语句,这可能导致执行这些表上的数据操作语言 (DML) 触发器。 有些情况下,可能需要在同步期间防止这些触发器触发或防止约束被强制执行。 此行为取决于触发器或约束的创建方式。
防止触发器在同步期间执行
创建新触发器时,请指定 CREATE TRIGGER (Transact-SQL) 的 NOT FOR REPLICATION 选项。
对于现有的触发器,请指定 ALTER TRIGGER (Transact-SQL) 的 NOT FOR REPLICATION 选项。
防止约束在同步期间被强制执行
- 创建新 CHECK 或 FOREIGN KEY 约束时,请在 CREATE TABLE (Transact-SQL) 的约束定义中指定 CHECK NOT FOR REPLICATION 选项。