这是8年前的转贴,因为那里提供的解决方案对我没有用,也许现在对我和其他有此问题且无法解决的其他人也有更多选择。 / p>
每次我执行它们时,它们以不同的顺序执行,甚至第一个执行两次。我已经重新创建了任务,希望是SSIS按创建顺序执行它们。
尽管有优先约束,但每次执行程序包时它们都会以随机顺序运行,因此我决定重新创建整个程序包。也失败了。
由于我没有找到其他解释,所以感觉简直就像是微软在惹我。
如果我的帖子没有被选为“冗余”,提供的任何帮助都会使我感到宽慰。
/ 进行编辑以添加信息 /
我真正的问题是SSIS没有按定义的顺序插入数据。它只是根据需要执行数据插入。因为我确实需要将数据以指定顺序本地存储。我以前做过,只是不明白为什么这个tiem不同。但是我可以运行ORDER BY来获取所需的数据,除了访问数据的人不是我,希望提取并打印数据的人注意这一点。
但是最大的问题是SSIS执行了两次随机任务,因为我出于任何原因都没有重复的数据,以后也将用于汇总(我怀疑这与随机顺序有关)因为发布原始问题的人与我的问题完全相同)。
注意到这些问题的真正方法不是查看SSIS流程,而是查看存储在数据库中的数据。抱歉,如果我不清楚我的问题。
答案 0 :(得分:0)
SSIS日志未按任务运行的顺序显示任务。实际上,在上面的屏幕快照中,它似乎按字母顺序将它们放置了。
仅仅是因为Abril
在执行日志中位于Enero
上方,并不意味着Abril
首先运行,Enero
其次运行。
基于以下评论的附录:
您可能会误以为,如果您以某种顺序将数据插入数据库,那么当您在不指定ORDER BY的情况下选择该数据时,将按照插入顺序获得数据。 This turns out not to be the case.以某种顺序从数据库获取数据的唯一保证方法是在选择SELECT时使用ORDER BY子句。
让我对此完全清楚。当您说“我从三月开始的数据比一月以来的数据被列在第一位时,意味着它被首先插入”,您错了。
至于为什么您的一月份数据似乎要插入两次,我们需要查看所有工作部分的详细信息:原始源数据,插入前的目标数据,插入后的目标数据以及SSIS包做插入。没有足够的信息来自己重现该问题,我们将无法帮助您理解为什么它会在您的包裹中发生。