2017-09-01 90 views
0

我正在使用SSIS连接到SQL Server数据库并将表拉入另一个SQL Server数据库。使用Visual Studio 2013来管理SSIS脚本。如何在SSIS脚本中的日期范围内提取数据

我需要拉的表格之一是巨大的,所以我想拉取大于日期范围的数据。即:2016年1月1日及以后的数据。 我如何通过SSIS做到这一点?我觉得应该在某个地方添加一个'Where'条款或者等同于那个条款。

链接两个数据库是否更容易,但出于安全原因,我不确定这是否是一个选项。

任何见识都会很棒。 谢谢!

+0

你是如何将表拉入另一个SQL Server数据库的?它应该像将where子句添加到您正在使用的任何语句一样简单。 – scsimon

回答

0

您可以在没有脚本的情况下执行此操作。创建一个数据流并通过sql命令设置你的源代码,或者创建一个存储过程来处理你的过滤。下面是一个使用SQL命令

enter image description here

然后创建一个目标和源列映射到你的目的地的例子。

另一种方法是将数据访问模式设置为变量。有了这个,你可以通过变量建立sql查询,并使用变量表达式使日期过滤器动态化。

我通常使用存储过程并传入参数进行过滤,但如果您刚开始使用ssis,我会先尝试其他两个选项。

0

试试吧

  • 使用数据流任务
  • 配置源的OLE DB源数据访问模式SQL命令或变量SQL命令(可以参数化两者)
  • 添加OLE DB目的地时,配置数据访问模式表或视图 - 快速负载和行每批次和最大插入提交大小 100000(你需要测试,以配合您的需要)
+0

要参数化SQL,请使用通配符“?”并点击参数按钮 –