当前位置:  开发笔记 > 数据库 > 正文

SSIS命令中的存储过程的SSIS返回值

如何解决《SSIS命令中的存储过程的SSIS返回值》经验,为你挑选了2个好方法。

我正在迁移必须使用已存在的存储过程插入的数据.存储过程具有参数和插入行的id的返回值(来自select语句).在SSIS中的OLE DB命令中,我可以调用存储过程传递列值作为参数,我通常使用存储过程的输出参数来处理"id"输出; 但是当程序使用select来返回id值时,我不确定如何使用返回值来处理这个问题.这是我之前使用过的一个例子,但是我需要从select中返回的值:

exec dbo.uspInsertContactAddress
@Address = ?,
@ContactID = ?,
@DeliveryMethodId = ?,
@ID = ? output,
@Version = ? output

bobwah.. 12

我发现我能做到这一点的方式实际上非常简单:

exec ? = dbo.StoredProc @param = ?, @param2 = ?

然后@RETURN_VALUE将出现在可用目标列上



1> bobwah..:

我发现我能做到这一点的方式实际上非常简单:

exec ? = dbo.StoredProc @param = ?, @param2 = ?

然后@RETURN_VALUE将出现在可用目标列上



2> John Mo..:

不要在SqlCommand属性中使用变量名,只使用问号以及输出参数的"OUT"或"OUTPUT"标签.

获取输出参数值的技巧是在OLE DB命令之前的管道中放置派生列转换以引入列(映射到SSIS变量)以捕获过程结果.

有关如何执行此操作的屏幕截图,请参阅OLEDB命令转换和标识列以获得良好的概述.另请参阅第一个链接中使用的"废纸篓目标"的" 废纸篓目标适配器 ".这是一个方便的工具,可用于调试这样的事情.

推荐阅读
mobiledu2402851173
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有