不同服务器数据库之间的数据定时同步到sql server (支持mysql,oracle数据库同步到sql server)
1,在目标数据库新增服务器对象->连接到服务器->新建服务器连接

2,编写数据同步业务PROC
ALTER PROC TestProc
AS
BEGIN
--打开完全事物回滚
SET XACT_ABORT ON;
SET NOCOUNT ON; --开始异常拦截
BEGIN TRY
--开始事物
BEGIN TRANSACTION;
PRINT '开始同步数据';
MERGE INTO dbo.TestTable AS T
USING
(
SELECT ROW_NUMBER() OVER (ORDER BY CREATE_DATE DESC) AS Id,
NAME,
PHONE
FROM [TEST_OGU].[Hyx_Finance_DB].[dbo].[TBL_CUSTOMER_RELATIONSHIP]
) AS d
ON T.Name = d.NAME
AND T.Phone = d.PHONE
--是否存在(存在更新)
WHEN MATCHED THEN
UPDATE SET Name = d.NAME,
Phone = d.PHONE
--不存在数据(新增数据)
WHEN NOT MATCHED THEN
INSERT
(
Name,
Phone
)
VALUES
(d.NAME, d.PHONE);
PRINT '同步数据结束';
--提交事物
COMMIT TRANSACTION;
--结束异常拦截
END TRY
BEGIN CATCH
--回滚事物
IF XACT_STATE() <> 0
BEGIN
ROLLBACK TRANSACTION;
END;
END CATCH; --还原事物设置
SET XACT_ABORT OFF;
END;
3,设置定时作业
1、打开本地数据连接,在左边资源管理器中找到Sql Server代理(在最下面)
2、【新建】一个作业
3、在【常规】中填写名称即可,说明看个人习惯
4、打开【步骤】,点击【新建】,填写【名称】,选择【数据库】,在命令空白处填写T-sql语句,然后点分析。
5、打开【计划】,点击【新建】,设置你想要的定时计划,然后保存。
6、点击【Sql Server代理】,右键启动,即定时作业启动。
7、如果想让定时作业开机自动启动,则在 服务中找到SQL Server 代理 (MSSQLSERVER),设置成【自动】模式
第三步:把定时作业生成脚本
方法1、点击【SQL Server 代理】下的作业,选中你创建的作业——右键编写作业脚本——create到,然后复制脚本语言即可
方法2、发现有博主这样写的(管理-SQL Server代理-作业(鼠标右键)-所有任务-生成SQL脚本-保存到下的某个sql文件 [Page])
不同服务器数据库之间的数据定时同步到sql server (支持mysql,oracle数据库同步到sql server)的更多相关文章
- SQL Server 之 在数据库之间进行数据导入导出
1.同一服务器上数据库之间进行数据导入导出 (1).使用 SELECT INTO 导出数据 在SQL Server中使用最广泛的就是通过SELECT INTO语句导出数据,SELECT INTO语句同 ...
- 阿里云RDS实例内不同数据库之间的数据迁移
适用场景 本文适用于使用DTS实现相同实例下库名不同的数据库之间的数据迁移.本文以使用DTS将同一RDS实例下的amptest库迁移到jiangliu_amptest库为例来说明如何使用DTS实现相同 ...
- PL/SQL Developer 远程连接Oracle数据库
PL/SQL Developer 远程连接Oracle数据库 网上搜了很多方法,这个可行! 1. 配置服务器tnsnames.ora文件,如果本机上没有安装oracle,可以从安装了oracle ...
- Decimal为SQL Server、MySql等数据库的一种数据类型
Decimal为SQL Server.MySql等数据库的一种数据类型,不属于浮点数类型,可以在定义时划定整数部份以及小数部分的位数.使用精确小数类型不仅能够保证数据计算更为精确,还可以节省储存空间, ...
- 支持MySql的数据库自动分表工具DBShardTools发布
支持MySql的数据库自动分表工具DBShardTools发布 前段时间参与了公司的一个项目,这个项目的特点是数据量.访问量都比较大,考虑使用数据库水平分表策略,Google了大半天,竟然没有找到分表 ...
- undo丢失恢复异常恢复,运维DBA反映Oracle数据库无法启动报错ORA-01157 ORA-01110,分析原因为Oracle数据库坏块导致
本文转自 惜纷飞 大师. 模拟基表事务未提交数据库crash,undo丢失恢复异常恢复,运维DBA反映Oracle数据库无法启动报错ORA-01157 ORA-01110,分析原因为Oracle数据库 ...
- PL/SQL Developer连接远程Oracle数据库
转自:http://zhengdu.net/archives/152 一.首先看远程端oracle服务是否启动 如果没有启动,请启动oracle服务 ps:创建或者删除oracle监听 二.远程端or ...
- sql plus 和 pl/sql无法连接远程oracle数据库
前言:安装完oracle客户端后,可能会出现sql plus 和 pl/sql无法连接远程oracle数据库的情况,可能是以下原因: 针对sql plus连接不上: 1 可能原因:之前安装过oracl ...
- SQLite与MySQL、SQLServer等异构数据库之间的数据同步
SQLite DBSync是开源嵌入式数据库SQLite的数据同步引擎,实现了SQLite与SQLite数据库之间以及SQLite与异构数据库(Oracle.MySQL.SQLServer)之间的增量 ...
随机推荐
- Python -- 网络编程 -- 抓取网页图片 -- 图虫网
字符串(str)编码成字节码(bytes),字节码解码为字符串 获取当前环境编码:sys.stdin.encoding url编码urllib.parse.quote() url解码urllib.pa ...
- NodeJS require a global module/package in linux
https://stackoverflow.com/questions/15636367/nodejs-require-a-global-module-package 1 export NODE_P ...
- fastText 安装
Windows: https://www.lfd.uci.edu/~gohlke/pythonlibs/#fasttext 下载需要的版本 然后:pip install 文件名
- java的逻辑与和短路与
逻辑与 --& 短路与 -- && 只说一个最大的区别,平时我们用的最多的是 短路与来进行逻辑判断: 短路与(或)会从左往右逐个判断式子,只要能得出结果后面的式子不再判断.逻辑 ...
- 修改MVC默认的pageBaseType以添加功能
试想下在MVC的前端页面JS或者html中需要使用多语言,而后端的多语言是维护在资源文件中的,前端如果使用的话需要使用AJAX频繁的获取,一个页面中可能会存在大量的需要语言转换的地方,频繁使用AJAX ...
- DHCP协议原理及其实现流程
DHCP(Dynamic Host Configuration Protocol):动态主机配置协议 在常见的小型网络中(例如家庭网络和学生宿舍网),网络管理员都是采用手工分配IP地址的方法,而到了中 ...
- Windows 安装 MySQL 5.7.18
1. 在MySQL官网 http://dev.mysql.com/downloads/mysql/ 上面下载ZIP安装包(第二个:Windows (x86, 64-bit), ZIP Archive) ...
- vue-cli的工程如何正确使用Google Analytics?
前言 最方便的方法,莫过于使用vue-analytics:https://github.com/MatteoGabriele/vue-analytics. 包是有了,可是真正使用起来会发现Google ...
- 转载:Remote Validation
http://www.jb51.net/article/89474.htm 大多数的开发者,可能会遇到这样的情况:当我们在创建用户之前,有必要去检查是否数据库中已经存在相同名字的用户.换句话说就是,我 ...
- ssm项目快速搭建(配置)
核心jar包 <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncod ...