Sqlserver远程查询数据下载到本地

作者:自由 2020/4/1 12:51:16
Sqlserver远程查询数据下载到本地,Sqlserver备份远程数据到本地

1.用存储过程把数据从远程数据库中把数据添加到本地数据库表中

USE [demo_DB]
-- 开启远程权限
--exec sp_configure 'show advanced options',1
--reconfigure;
--exec sp_configure 'Ad Hoc Distributed Queries',1
--reconfigure;
ALTER PROCEDURE [dbo].[Linkbak]
AS
BEGIN
	begin transaction
	--先删除本地表数据
	delete from user
	
    -- 把远程的数据查出来备份到本地数据库表中
    INSERT INTO user
		  select *
		 from OPENDATASOURCE('SQLOLEDB','Data Source=数据库连接地址;User ID=用户名;Password=密码').数据库名.表名 

  if @@error>0  
	begin 
		rollback transaction 
	end 
	else
	begin 
  commit transaction
  end
END

2.新建一个sql文件通过可执行文件定时执行这个sql文件

use demo_DB(本地数据库)
 go
 exec Linkbak(本地数据库可执行文件)
 go

 

3.在系统中新建一个.bat的可执行文件例如(backDB.bat)

sqlcmd -S 本地数据库连接地址 -U 本地用户名 -P 本地密码 -i 执行存储过程文件

例如:

sqlcmd -S WIN-PTHE0QGE2CI\SQLEXPRESS -U sa -P 123456a? -i C:\Users\Desktop\数据库备份\backup.sql

4.使用windows自带的定时任务执行这个bat文件,根据自己的需要设置好定时运行这个bat文件就可以了

Sqlserver远程备份数据

Sqlserver远程查询数据库

Sqlserver远程更新数据到本地

评论: