tablediff同步
/*
--启用CMDshell
;EXEC sp_configure 'show advanced options', 1
;RECONFIGURE WITH OVERRIDE --
;EXEC sp_configure 'xp_cmdshell', 1
;RECONFIGURE WITH OVERRIDE
;EXEC sp_configure 'show advanced options', 0
*/
SET NOCOUNT ON
DECLARE @difftablesql VARCHAR(6000)
DECLARE @outputfile VARCHAR(400)
DECLARE @deloldoutputfile VARCHAR(400)
DECLARE @sourceserver VARCHAR(400)
DECLARE @sourceuser VARCHAR(400)
DECLARE @sourcepassword VARCHAR(400)
DECLARE @sourcedatabase VARCHAR(400)
DECLARE @sourcetable VARCHAR(400)
DECLARE @destinationserver VARCHAR(400)
DECLARE @destinationuser VARCHAR(400)
DECLARE @destinationpassword VARCHAR(400)
DECLARE @destinationdatabase VARCHAR(400)
DECLARE @destinationtable VARCHAR(400)
SET @sourceserver = '.\sql2005'
SET @sourceuser = 'sa'
SET @sourcepassword = 'abc.123'
SET @sourcedatabase = 'DatabaseA'
SET @sourcetable = 'SourceTable'
SET @destinationserver = '.\sql2005A'
SET @destinationuser = 'sa'
SET @destinationpassword = 'abc.123'
SET @destinationdatabase = 'DatabaseB'
SET @destinationtable = 'SourceTable'
SET @outputfile='C:\diffs.sql'
SET @deloldoutputfile='del '+@outputfile
--C:\Program Files\Microsoft SQL Server\100\COM\tablediff.exe --添加到环境
SET @difftablesql ='tablediff.exe '
SET @difftablesql =@difftablesql+' -sourceserver "'+@sourceserver+'"'
SET @difftablesql =@difftablesql+' -sourceuser "'+@sourceuser+'"'
SET @difftablesql =@difftablesql+' -sourcepassword "'+@sourcepassword+'"'
SET @difftablesql =@difftablesql+' -sourcedatabase "'+@sourcedatabase+'"'
SET @difftablesql =@difftablesql+' -sourcetable "'+@sourcetable+'"'
SET @difftablesql =@difftablesql+' -destinationserver "'+@destinationserver+'"'
SET @difftablesql =@difftablesql+' -destinationuser "'+@destinationuser+'"'
SET @difftablesql =@difftablesql+' -destinationpassword "'+@destinationpassword+'"'
SET @difftablesql =@difftablesql+' -destinationdatabase "'+@destinationdatabase+'"'
SET @difftablesql =@difftablesql+' -destinationtable "'+@destinationtable+'"'
SET @difftablesql =@difftablesql+' -sourcelocked -destinationlocked -f "' +@outputfile+'"'
PRINT @difftablesql
EXEC master..xp_cmdshell @deloldoutputfile
EXEC master..xp_cmdshell @difftablesql
DECLARE @sqlcmd VARCHAR(6000)
set @sqlcmd='sqlcmd '
set @sqlcmd=@sqlcmd+' -S "'+ @destinationserver+'"'
set @sqlcmd=@sqlcmd+' -U "'+ @destinationuser+'"'
set @sqlcmd=@sqlcmd+' -P "'+ @destinationpassword+'"'
set @sqlcmd=@sqlcmd+' -d "'+ @destinationdatabase+'"'
set @sqlcmd=@sqlcmd+' -i "'+ @outputfile+'"'
PRINT @sqlcmd
EXEC master..xp_cmdshell @sqlcmd
--EXEC master..xp_cmdshell @deloldoutputfile
SELECT * FROM DatabaseA.dbo.SourceTable
SELECT * FROM [2005a].DatabaseB.dbo.SourceTable
转载于:https://www.cnblogs.com/qanholas/archive/2012/03/10/2389316.html
tablediff同步相关推荐
- Linux面试必问-vim综合命令详解
vi编辑器是Unix的世界中一个相当强大的可视化编辑器,有人曾这样的说过在世界上有三种人:一种是使用Vi的,另一种是使用是Emacs的,剩下的是第三种人. 由此可以看出Vi和Emacs的强大.在有关L ...
- 比较和同步两个SQL Server数据库之间的图像
介绍 (Introduction) Sometimes we lose data by mistake and we want to compare the data with older backu ...
- ubuntu 修改时区、时间、同步网络时间、将时间写入硬件
查看系统当前的时间状态 $ timedatectl statusLocal time: 六 2021-10-30 09:33:37 CSTUniversal time: 六 2021-10-30 01 ...
- Go 学习笔记(66)— Go 并发同步原语(sync.Mutex、sync.RWMutex、sync.Once)
1. 竞态条件 一旦数据被多个线程共享,那么就很可能会产生争用和冲突的情况.这种情况也被称为竞态条件(race condition),这往往会破坏共享数据的一致性. 举个例子,同时有多个线程连续向同一 ...
- Python 多线程总结(2)— 线程锁、线程池、线程数量、互斥锁、死锁、线程同步
主要介绍使用 threading 模块创建线程的 3 种方式,分别为: 创建 Thread 实例函数 创建 Thread 实例可调用的类对象 使用 Thread 派生子类的方式 多线程是提高效率的一种 ...
- 同步与异步,阻塞与非阻塞的区别
1.概念剖析 相信很多从事linux后台开发工作的都接触过同步&异步.阻塞&非阻塞这样的概念,也相信都曾经产生过误解,比如认为同步就是阻塞.异步就是非阻塞,下面我们先剖析下这几个概念分 ...
- 线程的状态、调度、同步
线程的状态 java中的线程共五个状态:新建.就绪.运行.阻塞.死亡: 新建状态(New):处于系统创建线程,但未启动此线程,系统未为其分配资源. 就绪状态(Runnable):线程调用start( ...
- GIT上传服务器同步到web目录
实现自动同步到站点目录(www) 就比如刚才我们往远程仓库推送了index.php文件,虽然提示推送成功,但是我们现在在服务器端还看不到效果,心理总是不爽.又比如我写了个html页面,我想在站点中马上 ...
- Java 异步与同步的区别
同步: 所有操作完成之后,才会通知用户操作完成了. 异步:不用等所有操作完成之后,就会通知用户操作完成了,然后后台会继续操作直到完成结束. 为了方便理解 举例个常见的 android 网络请求使用的异 ...
最新文章
- rhel5+nis+autofs+nfs
- golang map 排序 key value
- CI 模型公用查询函数
- 【征稿进行时】计算机与智能控制主题征稿,ICCEIC 2020持续征稿中!
- 基于EasyNVR二次开发实现业务需求:用户、权限、设备管理
- hadoop二次排序
- usb接口供电不足_AMD RX 6000 系列显卡配备USB-C 接口,支持外接供电
- 陈年佳酿之 - Winform ListView 控件 double click 事件中获取选中的row与column
- LeetCode每日一题:14.longest-common-prefix(最长公共前缀)
- java applet布局_Java:Applet布局问题
- 英特尔开源计算机视觉数据标签工具CVAT,加速数据注释
- Linux学习之Linux系统目录简概
- Python Selenium的下载和安装
- 01web前端笔试试题
- C语言程序设计孙家啸第一版,广东(年4月自考各专业课程使用教材.doc
- 中兴新支点操作系统_中兴新支点操作系统的设计和功能怎样?
- matlab 定义结构体数组,结构体数组及其定义和使用,C语言结构体数组详解
- 关于图片或者文件在数据库的存储方式归纳
- [Error] expected primary-expression before '' token是什么意思
- kafka-manger监控部署
热门文章
- python依赖包是什么意思_Python引入依赖curses包的坑
- (16)Verilog模块例化-基本语法(四)(第4天)
- FPGA复位激励编写(方法三)
- Xilinx PLL IP核功能仿真
- bind mysql django_Django+bind dlz DNS管理平台
- linux清除硬盘,linux下清除硬盘的几种方法
- Python文件操作2
- 用电脑更新手机ios系统_macOS 11正式版:大更新!苹果把iOS风格搬到了电脑上
- linux路由内核实现分析(二)---FIB相关数据结构(3)
- 【JAVA】接口中的default和static方法