SQL テーブルから新しい GUID のリストを取得する SSIS パッケージがあります。次に、GUID を文字列変数に分割して、コンマで区切るようにしました。変数にどのように表示されるかの例は次のとおりです。
'5f661168-aed2-4659-86ba-fd864ca341bc','f5ba6d28-7283-4bed-9f11-e8f6bef225c5'
問題はデータ フロー タスクにあります。この変数を SQL クエリのパラメーターとして使用してソース データを取得しましたが、結果を取得できません。WHERE 句が次のようになっている場合:
WHERE [GUID] IN (?)
無効な文字エラーが発生したため、暗黙的な変換が思ったように GUID で機能しないことがわかりました。これが単一の GUID である場合、GUID の周りに {} を配置することでこれを解決できますが、実行時に取得する必要がある 4 つまたは 5 つの異なる GUID が存在する可能性があります。
私はこれでそれを回避できると考えています:
WHERE CAST([GUID] AS VARCHAR(50)) IN (?)
しかし、これは単に結果を生成せず、現在のテストには2つあるはずです.
これを達成する方法があるに違いないと思います...何が欠けていますか?