【发布时间】:2017-06-15 18:06:57
【问题描述】:
(我不是足够的成员,无法在我的帖子中包含屏幕截图 - 这是一个共享 OneDrive 文件夹的链接,其中包含带有图像的文章可以更好地解释https://1drv.ms/f/s!Ai9bJ2dV87SLg9h5FP84If74hyUK4Q)
我正在尝试记录在 SSIS 包工作流中通过执行 SQL 任务执行后插入、更新和删除的特定存储过程。有一个第三方实现的自定义日志记录方法,但它通过将系统 ParentContainer ID 与用户任务 ID 相关联来工作,该用户任务 ID 作为记录此类信息的存储过程的参数。 1) 我认为这不适用于执行 SQL 任务,并且 2) 我想要一个超出 DML 函数发生的细节级别。
通过设置结果集、使用变量以及通过相邻的数据流任务使用派生列任务检索变量并插入日志表,我成功地记录了“单行”。
以我目前的工作方式为例:
Exec SQL 任务设置
记录的数据流部分的详细信息
我现在遇到了执行多次插入的存储过程,因此我需要记录额外的详细信息 - 不止一行。我在 proc 中创建了变量来检索这个多重 INSERT 场景,并在 SP 中有一个联合选择,产生以下结果集。
我知道我现在需要使用完整结果集设置,但是对于这个应用程序,使用什么方法将结果集保存到另一个步骤(对我来说是一个目的地以便记录)。在研究中,我了解如何使用 Foreach 循环容器,但这似乎可以配置为一个需要为值类型对象的变量。我目前在这里有 4 个变量,无法在 Foreach 对象的 Collection 部分中进行设置。
我将不胜感激任何实现这一目标的见解或对另一种方法的建议。
非常感谢!
【问题讨论】:
-
我觉得这个问题模棱两可,因此不清楚。当你得到这个时:“但我对从那里采取什么方法以及如何记录这个感到困惑”,你已经不再清楚你在说什么了。你能把你的问题编辑成只提要领,并在没有不必要的背景噪音的情况下专注于问题的本质吗?
-
修改是否满意请告知
-
不,我仍然不知道你想问什么,抱歉。
-
不知道?真的吗?无论如何,谢谢。
标签: sql-server ssis