5

tSQL スカラー値関数があります

ALTER FUNCTION [dbo].[MyDB_GetJobId]
(
)
RETURNS [uniqueidentifier]

vJobIdその結果は、として宣言された SSIS ユーザー変数に入る必要がありますString。SqlStatementSource はEXEC ? = dbo.MyDB_GetJobId(); 結果セットは次のとおりです: Result Name: 0; Variable Name: User::vJobId.

動作しません、エラーメッセージは次のとおりです

"EXEC ? = dbo.MyDB_GetJobId()" failed with the following error: "No value given for one or more required parameters.". Possible failure reasons: Problems with the query, "ResultSet" property not set correctly, parameters not set correctly, or connection not established correctly.

接続は問題ありません (プレーンな SQL リクエストは正常に実行されます)、入力パラメーターはありません... 助けていただけますか? ありがとう。

4

1 に答える 1

18

私は当初、Return の方向で Parameter Mapping を使用しようとする道をたどりましたが、それは正しくありませんでした。

代わりに、SQL 実行タスクを図のように構成しました。私ResultSetのは「一列」です。私SQLStatementは単に「SELECT dbo.MyDB_GetJobID()」です

SQL 実行全般タブ

[結果セット] タブでは、これは単一行の ResultSet タイプであるため、列ごとにゼロベースの序数システムでマッピングを提供します。

[SQL 結果セットの実行] タブ

これは、変数に代入される結果を示す例ですUser::SingleRowOther[パラメーター マッピング] タブを使用して機能させようとしていたので、無視してかまいません。

ここに画像の説明を入力

于 2013-02-19T18:50:40.840 に答える