5

名前のリストを通常のテスト形式ですべて 1 行で返す単純なストアド プロシージャを呼び出そうとしています。2 つのパラメーターを渡していますが、OLE DB ソース エディター内または SQL 実行タスク内で呼び出しをセットアップする方法に関係なく。SQL ステートメント b/ci でエラーが発生し続けるので、何か不足しているに違いありません。

私のSQLコマンドテキストは

EXEC [dbo].[spGetEmployerIdCSV]  ?,  ?

私が渡しているパラメーターは、ストアド プロシージャで宣言されているとおりにリストされており@IDType@IDNumber定義済みの変数にマップされています。

いずれかのタスク タイプから実行しようとするたびに、

EXEC SQL 構文またはステートメントはサポートされていません。

SSIS 内でストアド プロシージャを実行する最良の方法は何ですか?

ありがとうございました。

4

5 に答える 5

6

問題を再現できません。

既に存在する proc を使用して制御フローを作成しました。

制御フロー

SQL実行タスクを次のように構成しています

exec sql タスク

私のパラメータタブが表示されます

パラメータ マッピング

[実行] をクリックすると、パッケージが緑色になります。

私の最初の想定は、ストアド プロシージャを使用していて、EXEC 部分を誤って提供していることを通知したということでした。私はSSRSで同様のことをしましたがIsQueryStoredProcedure、Expressionを介してTrueに更新しても、エラーメッセージを再生成できませんでした.

実行 SQL タスクで示したものとは別の/異なる/追加のことを行っている場合は、質問を修正して、手順が表示するすべての機能を説明していただけますか。

于 2013-07-22T19:56:33.880 に答える
1

私も同じ問題を抱えていました。

タスクを実行したら、[進行状況] タブを確認します。これにより、「本格的な」エラーの詳細が得られます。

私の場合、SQL タスクで作成したパラメーターをストアド プロシージャの実際のパラメーターにマップしませんでした。

したがって、SQL タスクをダブルクリックし、左側の [パラメーター マッピング] をクリックしてから、パラメーターとそれぞれのマッピングを作成します。これがスクリーンショットです(バージョン2012):

ここに画像の説明を入力

于 2014-06-24T10:15:28.793 に答える
0

VS 2013 の SSDT にアップグレードした後、同様の問題に直面しました (問題はルックアップ要素にありました)。この回答を使用して修正しました:

EXEC ('dbo.MyStoredProcedure')
WITH RESULT SETS
  (
    (
        MyIntegerColumn INT NOT NULL,
        MyTextColumn VARCHAR(50) NULL,
        MyOtherColumn BIT NULL
    )
  )
于 2019-10-24T15:24:57.127 に答える
-3

MySQL ワークベンチでストアド プロシージャを実行するために使用するのと同じコマンドを使用します。

電話 ();

このコマンドは、SQL タスクの実行で使用します

于 2014-01-07T23:59:52.730 に答える