我有一张811记录表.我希望一次获得五条记录并将其分配给变量.下次当我foreach在SSIS中运行循环任务时,它将循环另外五个记录并覆盖变量.我尝试过使用游标但找不到解决方案.任何帮助将受到高度赞赏.我有这样的表格,例如
ServerId ServerName
1 Abc11
2 Cde22
3 Fgh33
4 Ijk44
5 Lmn55
6 Opq66
7 Rst77
. .
. .
. .
Run Code Online (Sandbox Code Playgroud)
我想查询应该采用如下的前五个名称并将其分配给变量
ServerId ServerName
1 Abc11
2 Cde22
3 Fgh33
4 Ijk44
5 Lmn55
Run Code Online (Sandbox Code Playgroud)
然后下一个循环取另外五个名称并覆盖变量值,依此类推,直到消耗掉最后一个记录.
考虑到ltn的答案,这是如何实现限制SSIS中的行.
设计看起来像

第1步:创建变量
Name DataType
Count int
Initial int
Final int
Run Code Online (Sandbox Code Playgroud)
步骤2:对于第一个执行SQL任务,编写sql来存储计数
Select count(*) from YourTable
Run Code Online (Sandbox Code Playgroud)
在General此任务的选项卡中,选择ResultSet为Single Row.
在ResultSet选项卡中,将结果映射到变量
ResultName VariableName
0 User::Count
Run Code Online (Sandbox Code Playgroud)
步骤3:在For循环容器中输入表达式,如下所示

步骤4:在For循环内部拖动一个执行SQL任务并编写表达式
在参数映射中映射initial变量
VariableName Direction DataType ParameterName ParameterSize
User::Initial Input NUMERIC 0 -1
Run Code Online (Sandbox Code Playgroud)
结果集选项卡
Result Name Variable Name
0 User::Final
Run Code Online (Sandbox Code Playgroud)
在DFT内部,你可以编写sqL来获取特定的行

单击Parameters并选择变量INITIAL和FINAL
| 归档时间: |
|
| 查看次数: |
1181 次 |
| 最近记录: |