日期:2014-05-17  浏览次数:20780 次

关于两台电脑上不同数据之间建立触发器的问题!
现我有两台数据库服务器。在对外的服务器上有供用户注册后保存用户信息的数据库的用户表,我需要在用户注册后在对内的数据库上的一个表中保存用户注册后的ID和姓名。该怎么写这个触发器?请高手指教!

------解决方案--------------------
trigger由于网络等的多种问题,可能会导致外部应用无法正常执行。
你的这个需求还是使用高级复制比较好。

引用楼主 FBI_CY 的帖子:
现我有两台数据库服务器。在对外的服务器上有供用户注册后保存用户信息的数据库的用户表,我需要在用户注册后在对内的数据库上的一个表中保存用户注册后的ID和姓名。该怎么写这个触发器?请高手指教!

------解决方案--------------------
对外的服务器上建立对内的服务器的 DBLINK 

触发器中插入语句:insert into (dblink名称).table (ID,NAME) values (:NEW.ID,:NEW.NAME);
------解决方案--------------------
应该是:
insert into table (ID,NAME)@(dblink名称) values (:NEW.ID,:NEW.NAME);

吧。
------解决方案--------------------
对Insert动作做触发器,用DBLink访问对内服务器。
如果不要求实时,就用job定时同步得了。