【发布时间】:2011-01-29 22:06:17
【问题描述】:
我有 2 个 db,并使用它们之间的复制来复制一个模式。 (甲骨文流)
在远程数据库中添加新数据后,是否可以添加一个表触发器或类似的东西来调用(对每一行更好)?
我尝试在更新和插入时触发 - 它们不会被触发。
【问题讨论】:
标签: oracle triggers stream replication
我有 2 个 db,并使用它们之间的复制来复制一个模式。 (甲骨文流)
在远程数据库中添加新数据后,是否可以添加一个表触发器或类似的东西来调用(对每一行更好)?
我尝试在更新和插入时触发 - 它们不会被触发。
【问题讨论】:
标签: oracle triggers stream replication
根据您尝试实现的具体逻辑类型,您可能想要创建自定义应用处理程序或包含自定义操作的应用规则。 Advanced Rule Concepts 上的 Streams 概念和管理手册中的章节可能是开始了解可用选项的好地方。
【讨论】:
当我们在 2 个 db 之间复制表时,我们也会复制触发器。
但在 dest db 上应用进程禁用 dest 表上的触发器。
要在 dest db 上强制执行触发器,需要运行这样的程序:
BEGIN
DBMS_DDL.SET_TRIGGER_FIRING_PROPERTY('<trigger_owner>', 'trigger_name', FALSE);
END;
【讨论】: