【问题标题】:Report rowcount to SQL AGENT from Execute SQL task in SSIS package从 SSIS 包中的执行 SQL 任务向 SQL 代理报告行数
【发布时间】:2014-06-26 15:19:42
【问题描述】:

我有许多 SSIS 包,它们运行从一个数据库到另一个数据库的净更改导入过程。 在目标服务器,数据流任务将数据插入到临时表中,然后我在执行 SQL 任务中运行一组非常简单的净更改插入/更新/删除查询。

我想向 SQL 代理报告插入、删除和更新的行数 - 具体来说,我希望这些计数显示在 SSMS 的“查看历史记录”界面中,用于运行此 SSIS 包的任何作业。

我觉得这应该非常简单(毫无疑问会变成这样),但我不知道该怎么做。

我正在运行 SQL Server 2008 R2

【问题讨论】:

  • 您是否考虑过有意存储这些数据而不是将其留在 SQL 代理作业日志中?在我看来,跟踪包执行、它们的持续时间和经过该过程的总行数是一种常见的做法(原始计数,然后重新计为修改、新、未更改)
  • 谢谢。我们确实为很多任务记录到表,在其他情况下我们也记录到文件,但在这种情况下,这只是我所追求的眼球检查,在工作历史界面中显示它会很有帮助,因为它是一个快速简单的界面。

标签: sql-server-2008 ssis


【解决方案1】:

它适用于 CmdExec 和 T-SQL 作业类型。试一试 SSIS 作业类型。

在执行 SQL 任务中,存储更新/插入/删除行的计数。在任务中使用 PRINT 语句。然后转到 New Job => Steps => New => 在 New Job Step 下单击 Advanced 窗格,然后选中“Include step output in history”复选框。

【讨论】:

  • 恐怕这不起作用 - 这是我尝试的第一件事。执行 sql 任务中的选择和打印语句似乎没有公开。
猜你喜欢
  • 2018-03-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多