在本文中, 我们说下增量更新数据:即将数据源中更新了的数据替换掉目标表中对应的数据. 更新代码 操作之前我们先把目标表e (dbo.Contact). 的数据改掉 Use AdventureWorks go Update dbo.Contact Set MiddleName = 'Ray' Where MiddleName Is NULL 打开 My_First_SSIS_Project. 点击  Data Flow 标签. 我们把Level 3的项目文件修改下.双击 Lookup Transf…
让我们打开之前的项目:My_First_SSIS_Project_After_Step_2.zip 之前项目中我们已经向dbo.contact 导入了19972行,如果再次执行包会重复导入,让我们来解决这个问题. 增量导入目标 (Incremental Load Goals) 在我们批量处理之前,先来明确下增量导入的目标: 如果数据源中有新纪录,我们要把这些记录导入目的地. 如果数据源中有记录变更,我们要把之前导入目的地的相关记录更新. 如果数据源中的记录被删除,我们要把之前导入目的地的相关记录…
在 dbo.Contact中添加一行记录 Use AdventureWorks go Insert Into dbo.Contact (FirstName, MiddleName, LastName, Email) Values ('Andy', 'Ray', 'Leonard', 'andy.leonard@gmail.com') 把 Data Flow Task 改名为 “Insert and Update Rows.” 然后再拖一个 Data Flow task 并改名为 “Delete…
介绍 在本文中我们将利用SSIS参数,变量 以及 Foreach Loop Container 从多个源动态导入数据. 开始前我们先下载一些数据.WeatherData_Dec08_Apr09.zip  解压以后我们看到有三个目录数据 Figure 1 每个月年目录包含一个子目录 TH.每个TH 目录包含文件 sensor1-all.csv.  这些文件是 December 2008 至 April 2009 温度和湿度数据. February 2009 的文件包括December 2008 至…
介绍 本文中,我们将结合之前学习的时间冒泡,日志记录,以及复制模型.建立一个自定义的SSIS包日志模型. SSIS Task事件回顾    Reviewing SSIS Task Events 在做实验之前我们更改一下 Precedence.dtsx SSIS 包的设置. 把 Precedence.dtsx SSIS 包的 DisableEventHandlers 属性改为True Figure 2 屏蔽内置日志   Disable Built-In Logging 首先我们要移除已经存在的日志…
介绍 在本文中,我们会实验 MaximumErrorCount和ForceExecutioResult 故障容差属性,并且还要学习Control Flow task errors, event handlers 和 containers 的联系 关于 SSIS Task Errors 打开 Precedence.dtsx 包. 你的Control Flow 显示如下: 图 1 再做测试前我们先调整两个优先约束.   Script Task 4 和 Script Task 3  调整如下: 图 2…
介绍 在本文中,我们要创建一个SSIS Catalog 实例,部署我们的项目,并且运行 weather data loader 包. SSIS 2012 部署模型   SSIS 2012 Deployment Models SQL Server 2012 Integration Services 支持两种部署模型: 包部署模型  Package Deployment Model 项目部署模型  Project Deployment Model 包部署模型是向后兼容的,支持SSIS 2012以前的…
简介 在之前的章节中,我们学习了增量载入数据. 本文中.我们通过优先约束(Precedence Constraints)来管理SSIS的工作流. 添加一个SSIS包 图 1 将新建的Package1.dtsx 改为 Precedence.dtsx  : 图 3 添加 Script Task 拖个 Script Task 到Control Flow: 图 5 Script Task估计是SSIS 里面最强大的组件了.你可以创建很多功能. 同样的,你能通过Script Task 控制SSIS工作流.…
介绍 在本文中我们会研究SSIS变量姐妹: SSIS 变量. 我们会演示参数配置,通过包参数管理动态属性值,然后会演示SSIS包执行的时候参数怎么被配置的. SSIS Parameters 101 SSIS参数和SSIS变量很像.  在SSIS 2012里面 变量和参数是可以互换的. 不过有重要的不同点: SSIS包开始执行以后,参数是只读的. 参数的作用域为项目或者包级别. 参数有 Sensitive 属性. 参数有 Required 属性. 因为参数在SSIS包执行的之后参数是只读的.所以参…
介绍 在前一篇中我们组合了已经学过的事件冒泡 event bubbling, 日志记录 logging, 和父子模型 Parent-Child pattern 建立了自定义的SSIS包日志记录. 本文中, 我们会将我们的解决方案升级至 SQL Server 2012 Integration Services 并且展示 SSIS变量 (SSIS variables), 变量(variable configuration), 以及通过表达式处理动态值 (dynamic value managemen…