广告
返回顶部
首页 > 资讯 > 数据库 >SSIS中怎么创建同步数据库数据任务
  • 149
分享到

SSIS中怎么创建同步数据库数据任务

2024-04-02 19:04:59 149人浏览 泡泡鱼
摘要

本篇文章给大家分享的是有关SSIS中怎么创建同步数据库数据任务,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。这些包可以独立使用,也可以与其他包

本篇文章给大家分享的是有关SSIS中怎么创建同步数据库数据任务,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

这些包可以独立使用,也可以与其他包一起使用以满足复杂的业务需求。Integration Services 可以提取和转换来自多种源(如 XML 数据文件、平面文件和关系数据源)的数据,然后将这些数据加载到一个或多个目标。(摘自MSDN,更多详细信息可参考:Http://technet.microsoft.com/zh-cn/library/ms141026(v=sql.105).aspx) 下面我使用SSIS来演示一个实际例子。比如我有一个数据库,出于备份数据或者其它的目的,会定期的对这个数据库的数据迁移到其它的数据库去。迁移的时候,有些新增的字段会被插入备份数据库,而有些被修改过的字段也会在备份数据库被修改。现在我们就用SSIS来完成这项任务。 首先在我源数据库db_source和目标数据库db_destination中运行以下SQL创建好需要的表,就以这一个表test_1来进行示范。复制代码 代码如下: CREATE TABLE [dbo].[test_1]( [Id] [int] IDENTITY(1,1) NOT NULL primary key, [Name] [varchar](50) NULL, [Age] [int] NULL )

建好表好在源数据表中可以随便加几条记录,目标数据库暂时留空。

现在我们打开VS,创建一个Intergration Services Project。(注意:如果SQL Server 装的是Express版的话是没有这个项目工程模板的)

创建好工程后,在Control Flow这个Tab下拖入一个Data Flow Task,如下图:

双击这个Data Flow Task,我们就会进入Data Flow这个Tab标签中。

然后我们在左边工具栏里找到OLE DB Source,继续拖两个OLE DB Source出来。分别给它们命名为Source DB和Destination DB。

将数据源拖出来后,双击它,可以对它进行一些设置,主要就是链接数据库及选择你要进行迁移的表或者视图等设置,这里我就不详细说明了。注意一点的是就像上图所示,如果一个图形上出现一个红X的话说明设置有错误。

再来就是拖两个Sort及一个Merge Join出来,将之前的数据源箭头分别指向两个Sort,最后两个Sort出来的数据同时输入Merge Join中。

分别双击两个Sort,钩选表中的ID,对ID这个字段进行一次排序。因为Merge Join这个流程要求输入的数据是已排序好的。这个排序也可以直接在数据源中对它们的输出字段设置SorTKEyPosition这个属性来排序。(详见:http://msdn.microsoft.com/zh-cn/library/ms137653.aspx)

这里我们第一次从Sort拉箭头到Merge Join的时候,会让我们选择这个输入的数据是作为左输入还是右输入,我们按照图示的那样,左边的作为左输入,右边的作为右输入。然后我们双击Merge Join,按照如下图所示设置:

这里打钩的是这个流程之后输出的数据,Join Type需要选择为Left outer join,因为左边是我们的原始数据表,右边是我们备份的表,右表可以看成是一个左表的一个子集,如果左表有的数据,右表没有的,那些就是需要新插入备份数据库的数据。

现在我们需要一个分支,即新的数据需要插入备份数据库中,而已有的数据需要更新为新的值。我们从工具栏中拖入一个Conditional Split来进行这样的分支处理。我们将Merge Sort中的输出指向Conditional Split,然后双击Conditional Split,如下图所示设置(注意条件一个是ISNULL,一个是非ISNULL)。

这时它们的输入值就被分成两种条件输出,最后我们再拖入一个OLE DB Destination来插入数据和一个OLE DB Command来更新数据库,最终流程如下图:

双击设置OLE DB Destionation,选择好数据导入的目标数据库中的表,这里需要注意的就是要钩选Keep identity这个选项,因为我创建表的时候对ID字段使用了自增属性。

双击设置OLE DB Command,首先在Connection Managers这个Tab中选择好链接对象,然后在Component Properties这个选项卡中,设置你的SqlCommand属性。如下图:

这里的参数值都是用?号来代替,之后在Column Mappings这个Tab中设置代替值实际代替的列,如下图:

至此,任务就创建完毕了,没有编写任何代码,直接拖拉完成了。现在可以直接在VS中按F5运行看下效果,我们的目标数据表将插入源数据表中的值。然后我们修改一下原数据表,再来运行一下上面这个任务,就可以在目标数据库中看到更改了。

那么如何去定时完成任务哩?这里可以用SQL Server Agent去调用上面我们写好的包,或者在windows计划任务中使用DTExec.exe去执行上面的任务。

以上就是SSIS中怎么创建同步数据库数据任务,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注编程网数据库频道。

您可能感兴趣的文档:

--结束END--

本文标题: SSIS中怎么创建同步数据库数据任务

本文链接: https://www.lsjlt.com/news/58094.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • SSIS中怎么创建同步数据库数据任务
    本篇文章给大家分享的是有关SSIS中怎么创建同步数据库数据任务,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。这些包可以独立使用,也可以与其他包...
    99+
    2022-10-18
  • oracle数据库怎么创建任务
    在Oracle数据库中,可以使用DBMS_SCHEDULER包来创建任务。以下是一个创建任务的示例:1. 使用SYS用户登录到Ora...
    99+
    2023-09-01
    oracle数据库
  • 数据库中怎么创建数据表
    这篇文章主要介绍了数据库中怎么创建数据表的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇数据库中怎么创建数据表文章都会有所收获,下面我们一起来看看吧。创建数据表创建数据表使用 "CREATE ...
    99+
    2023-06-08
  • Mysql数据库中怎么实现数据同步
    Mysql数据库中怎么实现数据同步,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。1. 安装配置两台服务器,分别安装好Mysql,都安装在 /u...
    99+
    2022-10-18
  • MySQL中怎么创建数据库
    本篇文章给大家分享的是有关MySQL中怎么创建数据库,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。  我们用MySQL创建数据库,下面是具体步...
    99+
    2022-10-18
  • SQLite 中怎么创建数据库
    SQLite 中怎么创建数据库,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。sqlite3命令的基本语法如下:  $sqlite3Data...
    99+
    2022-10-18
  • linq中怎么创建数据库
    linq中怎么创建数据库,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。◆CreateDatabase方法用于在服务器上实现linq创建数据库。◆DeleteDatabase方法...
    99+
    2023-06-17
  • mySQL数据库中怎么创建数据库和用户
    本篇文章为大家展示了mySQL数据库中怎么创建数据库和用户,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。MySQL数据库系统可以支持许多不同的数据库,通常,每个应用...
    99+
    2022-10-18
  • Mysql数据库中怎么创建从库
    今天就跟大家聊聊有关Mysql数据库中怎么创建从库,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。首先参考http://blog.itpub.net/...
    99+
    2022-10-18
  • mysql怎么创建数据库
    这篇文章给大家分享的是有关mysql怎么创建数据库的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。mysql怎么创建数据库?1. 打开电脑中管理MySQL的软件2.&nb...
    99+
    2022-10-18
  • 怎么创建mysql数据库
    今天就跟大家聊聊有关怎么创建mysql数据库,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。mysql创建数据库的方法是:可以使用create命令创建...
    99+
    2022-10-18
  • mongodb怎么创建数据库
    mongodb中创建数据库的方法:在mongodb中创建数据库可以使用use方法,语法格式:“use 数据库名”,例如:“use yisu”创建一个名为yisu的数据库,如果在mongodb中该数据库不存在,则创建数据库,否则切换到指定数据...
    99+
    2022-10-07
  • android怎么创建数据库
    在Android中创建数据库可以通过以下步骤来完成:1. 创建一个继承自SQLiteOpenHelper的类,用于管理数据库的创建和...
    99+
    2023-08-26
    android 数据库
  • 使用datax实现增量同步mysql数据库数据(定时任务)
    使用datax来做数据全量同步很简单,增量同步该怎样做呢,接下来就一起试试吧 下载datax(前提CentOS已安装jdk等运行环境),解压(路径自定),使用centos7自带的python执行datax.py,运行自检 wget http...
    99+
    2023-09-22
    python json 开发语言 数据库
  • MySQL怎么创建数据库和数据表
    本文小编为大家详细介绍“MySQL怎么创建数据库和数据表”,内容详细,步骤清晰,细节处理妥当,希望这篇“MySQL怎么创建数据库和数据表”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。MySQL 创建数据库和创建数...
    99+
    2023-07-05
  • MySQL数据库中怎么实现异构数据同步
    本篇文章为大家展示了MySQL数据库中怎么实现异构数据同步,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。在实现levelDB挂载成MySQL引擎时,发现在实际存储是...
    99+
    2022-10-18
  • 怎么在sqlyog中创建数据库?
    今天就跟大家聊聊有关怎么在sqlyog中创建数据库?,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。首先启动xampp的apache和MySQL然后打...
    99+
    2022-10-18
  • 怎么在postgresql中创建数据库
    在postgresql中创建数据库的方法:1.启动postgresql服务;2.登录postgresql数据库;3.使用createdb命令创建;具体步骤如下:首先,在命令行中启动postgresql服务;net start postgre...
    99+
    2022-10-07
  • 怎么在visual中创建数据库
    要在Visual Studio中创建数据库,可以遵循以下步骤:1. 打开Visual Studio,点击“文件”(File)菜单,选...
    99+
    2023-08-16
    visual 数据库
  • oracle数据库怎么同步到另一个数据库
    要将Oracle数据库同步到另一个数据库,可以使用以下方法:1. 数据库备份和还原:在源数据库中进行全量备份,然后将备份文件复制到目...
    99+
    2023-09-17
    oracle数据库 数据库
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作