最近弄了一个小项目,也不是很复杂,需要将一个数据库的一些数据备份到另外一个库,不是本地,可能是网络上其他的数据库,想了一下,用了存储过程和触发器。也不是很复杂,首先我需要操作远程数据库,于是写了一个存储过程:
CREATE PROCEDURE sendInfoToRemoteDb
@CardNo varchar(50),
@CardStyle varchar(20),
@userId varchar(20),
@UserName varchar(30),
@passDate datetime,
@inOut int
AS
BEGIN
--exec sp_addlinkedserver
<span style="white-space:pre"> </span>--@server='ims_srv_lnk',
<span style="white-space:pre"> </span>--@srvproduct='',
<span style="white-space:pre"> </span>--@provider='MSDASQL',
<span style="white-space:pre"> </span>--@provstr='Driver={SQL SERVER};SERVER=xxxx.com;UID=xxx;PWD=xxx;Database=xxx'
insert into ims_srv_lnk.IMSDBBAK.dbo.tb_record(cardNo,cardStyle,userId,userName,passDate,inOut)
values(@CardNo,@CardStyle,@userId,@UserName,@passDate,@inOut)
END
GO其实就是操作远程的数据库。插入一下数据,然后这边本地数据库写了一个触发器:

本文介绍了如何使用SQL Server的存储过程和触发器来实现远程数据库的数据备份。在操作过程中遇到了‘ims_srv_lnk已存在’的问题,通过调整代码成功解决了该问题。
最低0.47元/天 解锁文章
4679

被折叠的 条评论
为什么被折叠?



