如题。两台服务器。一个IP 168 (A服务器)一个IP164 (B服务器)两台服务器上架设了两个不同业务系统。通过SQL代理从A服务器上导入了一部分业务数据进B。然后A业务系统中已导入的数据发生了变动。因A业务系统不开源,找不到对应的存储过程,所以考虑用触发器来做。当A业务系统对指定的数据表做更新删除操作时触发,修改B服务器上导入的数据。我在触发器中用 
exec sp_configure 'show advanced options',1 reconfigure 
exec sp_configure 'Ad Hoc Distributed Queries',1 reconfigure 
opendatasource('SQLOLEDB', 'Data Source=192.168.1.168;User ID=sa;password=pwd')的方式来做的时候、提示触发器内不允许使用 CONFIGURE 语句
请问这样的不同IP服务器上的触发器该怎么处理???

解决方案 »

  1.   

    先用:
    EXEC sp_addlinkedserver  'srv_lnk','','SQLOLEDB','192.168.1.168'
    EXEC sp_addlinkedsrvlogin 'srv_lnk','false',null,'sa','pwd'连上.
      

  2.   

    触发器中直接用
    SELECT  *
    FROM srv_lnk.库名.dbo.表名  
      

  3.   

    exec sp_configure 'show advanced options',1 reconfigure  
    exec sp_configure 'Ad Hoc Distributed Queries',1 reconfigure  
    不要放触发器里,还有:高手都用 openrowset 不用opendatasource
    楼主试试?
      

  4.   

    EXEC sp_addlinkedserver 'srv_lnk','','SQLOLEDB','192.168.1.168'
    EXEC sp_addlinkedsrvlogin 'srv_lnk','false',null,'sa','pwd'这个的意思是添加数据链接吧。应为删除操作不是经常发生。所以只是想用临时打开链接的方式来做。如果实在不行就用ADDLINK了。。