如何在不同的服务器之间实现表的触发器操作
方法一:
--创建链接服务器
exec sp_addlinkedserver
@server ='link_server_name',--链接服务器名
@srvproduct = '',
@provider = N'SQLOLEDB',
@datasrc = N'server_name',--IP2服务器名
@catalog = N'master'
go
--创建远程登录
exec sp_addlinkedsrvlogin
@rmtsrvname = 'link_server_name',
@useself='false',
@rmtuser = 'sa', --远程服务器登录名称
@rmtpassword = '***'
go
create trigger sms_insert on sms for insert
as
set nocount on
set xact_abort on
insert into link_server_name.数据库B.dbo.sms select * from INSERTED
set xact_abort off
set nocount off
go
注:IP1和IP2都要启动MSDTC
========================================================
方法二:
--创建链接服务器
exec sp_addlinkedserver 'ITSV ', ' ', 'SQLOLEDB ', '远程服务器名或ip地址 '
exec sp_addlinkedsrvlogin 'ITSV ', 'false ',null, '用户名 ', '密码 '
--查询示例
select * from ITSV.数据库名.dbo.表名
--导入示例
select * into 表 from ITSV.数据库名.dbo.表名
--以后不再使用时删除链接服务器
exec sp_dropserver 'ITSV ', 'droplogins '
浙公网安备 33010602011771号