SSIS 学习之旅 数据同步

这一章 别人也有写过但是我觉得还是写写比较好。
数据同步其实就是想仿照 数据库的发布订阅功能

第一章:SSIS 学习之旅 第一个SSIS 示例(一)(上)

第二章:SSIS 学习之旅 第一个SSIS 示例(二)

设计:
   前面两个例子已经分别创建了两个数据库分别是Demon 和 Demon_text
   里面分别都有Users 表 以Demon库Users表为主表 像 Demon_text库Users表同步数据
   定期处理数据 使得两个库数据一致

创建数据库脚本:

-- 创建一个数据库Demo
CREATE DATABASE  Demon

-- 创建一张User表
CREATE TABLE [dbo].[Users](
    [ID] BIGINT IDENTITY(1,1) NOT NULL,
    [UserName] NVARCHAR(500) NULL,
    [PassWords] NVARCHAR(500) NULL
) ON [PRIMARY]

-- 给表添加数据
INSERT INTO [dbo].[Users]
VALUES ('LiLei','123456')
INSERT INTO [dbo].[Users]
VALUES ('Wangmingmign','654321')
INSERT INTO [dbo].[Users]
VALUES ('Jack','123654')

-- 创建数据库
CREATE DATABASE Demon_text

-- 用户表
CREATE TABLE [dbo].[Users](
    [ID] BIGINT IDENTITY(1,1) NOT NULL,
    [UserName] NVARCHAR(500) NULL,
    [PassWords] NVARCHAR(500) NULL,
    [UserGroupID] BIGINT NULL
) ON [PRIMARY]

INSERT INTO [Users]
VALUES ('LiLei','123123',1)
INSERT INTO [Users]
VALUES ('WangMingMing','123456',2)
创建语句

由于这个包 使用的库是上面两章的数据库 为了不重复创建数据库连接管理器
本人将Demon 库 和 Demon_text库的 连接管理器 设置成了项目连接
命名分表更改成了Demon 和 Demon_text 以便于区分

1.首先创建一个数据流任务。


2.创建两个OLE DB源 分别指向 Demon库 和 Demon_text 库

 

3.创建合并联接
注: 因为从库有删除操作。 所以选择的完全外部联接。根据实际情况来选择

4.创建有条件拆分
根据不同维度进行拆分数据。

 

5. 创建输出 OLE DB 目标

 

6.创建OLE DB 命令 (用于修改操作)


7.创建OLE DB 命令 (用于删除操作)
删除操作跟修改操作同理。只是SQL语句的不同。

 

8. 运行项目即可


本人不推荐这种形式,同步数据库中的表的数据。
因为 SQL Server 中有发布订阅的功能。

 

posted @ 2016-05-09 19:13  Mr_Damon  阅读(1517)  评论(0编辑  收藏  举报