2011-12-20 24 views
4

これは先に質問されたことが分かります。
ほとんどの回答は関連性がありませんでした。
Googleでは、「データフロータスク」で式を構成してクエリを設定するというソリューションを示しています。 ADO .NETソース内ただしSSIS - ADO .NETソースクエリへのパラメータの受け渡し

、私はそれがこのエラーで完全な変数が表示されない"Must declare the variable '@'"
を得続ける出力をプレビューしよう - "@[User::GLOBAL_PARAMETER]"

私は"[USER::"ではないので、それはだと思いますSQL内の正しい構文。しかし、どのようにそれを設定するのですか?

+0

として使用している表現を共有している場合それが役立つだろうCORRECT

だろうWRONG

"SELECT * FROM " + @[User::TABLE]だろう - データフロータスクでSQLコマンド式を設定したときに、引用符で囲んだので、文字列リテラルとして扱います。私は誰もがそれをやった方法だと思います。 – PlanetUnknown

+0

私はあなたの質問を理解していません。正確にどこで変数を使用しようとしていますか? 「データフロータスク」はコンテナであり、通常、データフロータスク内の他のタスクや変換で変数を使用します。変数の設定場所と変数の意味を明確にする必要があります。 – Pondlife

答えて

2

あなたの説明から、処理された変数値ではなくクエリ文字列内の変数名を使用するため、エラーが発生しているようです。言い換えれば、式ビルダーで

"SELECT * FROM @[User::TABLE]"、あなたはまた、クエリ

+0

小規模な訂正ですが、@ [User :: TABLE]の正面に小規模な訂正がありますが、それは理解できませんが、DT_WSTR、30を追加して正しく動作させる必要があります。しかし、99%のソリューションを提供してくれてありがとう! – PlanetUnknown

+1

@PlanetUnknown(DT_WSTR、30)は、データ型の文字列への変換です。 "string"以外の変数には必ず使用する必要があります。喜んで助けになる – cfrag

関連する問題