【问题标题】:Run stored procedure for multiple rows & record success/failure?为多行运行存储过程并记录成功/失败?
【发布时间】:2022-11-22 04:51:46
【问题描述】:

我有下表,每晚都会加载到我的数据库中(这通常包含更多行,但例如我只包含 2 行)。

然后我有一个名为 [dbo].[StitchUsernames] 的存储过程,它接受 UserID 作为参数。此存储过程获取 UserID 并更新另一个表以说明 UserID 已成功导入。

我想要实现的目标是为表中的每一行运行存储过程,并在StitchResult 表中记录存储过程运行(成功/失败)的结果。

实现这一目标的最佳方法是什么?因此,对于下面的示例,我希望它运行 UserID = 455,然后将 StitchResult 更新为成功/错误。然后它将移动到 22 并执行相同的操作.. 直到所有行都已完成。

  UserID           Username         StitchResult
  ----------------------------------------------
   455              Peter.S            NULL
   22               Maureen.T          NULL

感谢任何建议!我试过查看游标,但阅读这些内容会导致性能问题吗?

【问题讨论】:

  • 如果必须为每一行调用存储过程,则需要使用游标。最好将 proc 重构为多行的基于集合的操作。

标签: sql sql-server-2016


【解决方案1】:

我已经能够在 Azure 数据工厂中使用以下方法实现此目的。希望它对其他人有用!

https://helicaltech.com/lookup-foreach-activity-azure-data-factory/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-22
    • 1970-01-01
    • 1970-01-01
    • 2015-08-13
    • 1970-01-01
    相关资源
    最近更新 更多