我有一个文件,我想与我在数据库中使用SSIS项目的条目进行比较。SSIS变量超出范围
在我的ControlFlow中,我有'执行SQL任务',它从我的'脚本任务'中想要比较的数据库中获取结果列表。还有其他的东西在这里发生,我不知道,但有达到我的'脚本任务'之前有循环。
它运行良好,我第一次运行它,但一旦它尝试文件中的第二个条目,它会丢失数据库结果。我可以通过填写PreExecute)每次进入在ControlFlow循环一次,我失去了在this.Variables.AccountFilterVariables举行成果数据库结果(
private DataTable dt = new DataTable();
public override void PreExecute()
{
base.PreExecute();
OleDbDataAdapter adapter = new OleDbDataAdapter();
//filling results from database into DataTable object
adapter.Fill(dt, this.Variables.AccountFilterVariables);
}
,但现在要解决这个问题
我可以通过将“执行SQL任务”放入循环来修复此问题,但我不希望它每次都查询数据库基础。我只想查询一次数据库并在项目的整个生命周期中保存this.Variables.AccountFilterVariables。
我该怎么做?我猜它与PostExecute()有关,但我不确定是什么。
你可以弹出涉及的控制流和数据流的截图吗?我想我知道你在做什么,但一张图片会固化 – billinkc
似乎我需要更高的声誉来上传照片,但这是一个链接到我的ControlFlow http://i.stack.imgur.com/HFgf8.jpg DataFlow http ://i39.tinypic.com/24zg9r5.jpg – Eamonn