【发布时间】:2015-11-05 13:49:04
【问题描述】:
我有一个 SSIS 包,它将首先运行我的 sp_doSomething。这个存储过程将从几个不同的表中选择数据并将它们连接起来,以便可能存储到 dbo.someTable 中。但我只希望如果选择是 > 1 行选定数据。
然后我想有一个优先约束来查看我的存储过程返回的行数。
如果我的行数 > 1,那么我想获取存储过程的结果并将它们插入到我的一张表中。
否则,我将记录错误/发送电子邮件或其他任何内容。
我真的不想多次运行这个存储过程,但这是我能想到的唯一方法(运行它,计算行数。然后,再次运行它并插入结果)。
我是一个完整的 TSQL/SSIS 新手。所以如果这个问题是微不足道的,我很抱歉。 我在任何地方都找不到好的答案。
【问题讨论】:
-
你能合并任务吗?我的意思是你可以简单地将逻辑添加到存储过程中吗?
-
包中的 sp_doSomething 在做什么?它是否返回行数?创建结果集?如果它创建了一个结果集,您将如何处理包中的该结果集?
-
如果可能的话,是的,我可以更改存储过程。但我不完全知道要使用什么命令来做到这一点。
-
@TabAlleman 抱歉,我更新了我的问题以添加该信息。存储过程使用 SELECT 从几个表中选择某些列和 JOINS 来创建一组我可能想要插入到 dbo.someTable 中的数据。
-
第一个 sql 任务中的那组数据在做什么?将其存储在对象类型变量中?
标签: sql-server tsql stored-procedures ssis