sql server 跨数据库插入数据

时间:2023-03-08 22:16:44

创建服务器的连接,创建好后可以存在服务器上,可以在不同位置重复使用,和系统函数类似

exec sp_addlinkedserver 'RemoteServer', '', 'SQLOLEDB ', '192.168.3.225'
exec sp_addlinkedsrvlogin 'RemoteServer', 'false ',null, 'sa', 'hello@123'

删除连接

exec sp_dropserver 'RemoteServer', 'droplogins' 

使用方法:(连接.数据库.dbo.表)

select top 100 * from  RemoteServer.Suncome.dbo.AkEL

下面通过触发器调用

create trigger syncBarcode on BarcodeCompInfo
after update,insert
as
declare @Barcode nvarchar(50)
select @Barcode=Barcode from inserted declare @num int--用于判断上面的编号是不是存在于BdVendor表中,来推断添加还是修改
select @num=COUNT(*) from RemoteServer.Suncome.dbo.AkBarcodeCompInfo where Barcode=@Barcode if @num=0
begin
insert into RemoteServer.Suncome.dbo.AkBarcodeCompInfo(Barcode,OrderNumber,PrintDate,LineCode)
select [Barcode],[WorkOrderID],[PrintDate],[BC] from inserted
end

然而并没有什么卵用啊

sql server 跨数据库插入数据

右键点击“我的电脑”--“管理”--“服务和应用程序”--“服务”---启动“Distributed Transaction Coordinator”服务,启动分布式服务后还要打开远程服务器以及本地服务器135端口,因为远程分布式服务需要该端口通讯。
1:打开“控制面板”--“管理工具”--“组件服务”
2:在“计算机”下右击“我的电脑”--“属性”--选择“MSDTC”选项卡
3:点击“安全性配置”按钮,
4:网络DTC访问勾选上,允许远程客户端,允许远程管理,允许入站,
允许出站,不要求身份验证勾选上。
注意:以上步骤需要两台服务器都要配置。