(OLE DB) 执行 SQL 任务 - 使用输出参数

发布于 2024-10-26 01:23:23 字数 352 浏览 3 评论 0原文

我试图在 SSIS 中使用“执行 SQL 任务”来获取要存储在用户变量中的值。 文档说要使用“?”作为查询中参数的占位符,但是当我这样做时,尝试解析查询时出现语法错误。 所以查询是这样的:

SELECT ? = AVG(Score) FROM Scorecards

我还尝试在“?”之后添加 OUTPUT。我能找到的具有输出参数的所有示例都类似于

EXEC ? = MyStoredProc param1, param2, ...

这没有任何用处,因为我没有使用存储过程。该参数的使用看起来很相似,那么为什么 SSIS 不将其用作 select 语句呢?

I'm trying to use "Execute SQL Task" in SSIS to get a value to be stored in a user variable.
The documentation says to use '?' as a placeholder for parameters in the query but when I do I get a syntax error trying to parse the query.
So the query is like this:

SELECT ? = AVG(Score) FROM Scorecards

I've also tried adding OUTPUT after the '?'. All examples I can find for having an output parameter are similar to

EXEC ? = MyStoredProc param1, param2, ...

This isn't of any use though since I'm not using a stored proc. The use of the parameter seems similar though so why won't SSIS take it for a select statement?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

想念有你 2024-11-02 01:23:23

您需要将 ResultSet 属性设置为 Single Row,然后将查询修改为如下所示:

select avg(score) as AvgScore from ScoreCards

然后在“结果集”窗格中单击“添加”,将“结果名称”设置为“AvgScore”,将变量设置为“变量名称”(例如,User: :平均得分)。

You'll need to set the ResultSet property to Single Row, then amend your query to something like:

select avg(score) as AvgScore from ScoreCards

Then in the Result Set pane, click Add, set the Result Name to AvgScore, and your variable to Variable Name (for example, User::AvgScore).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文