私は理解できない問題を抱えています。SQL コマンドを使用して Server2 からデータを取得する SSIS パッケージを作成しました。クエリは非常に単純ですが、結合でビューを参照します。Server1 で SSIS パッケージを手動で実行すると、925 行が取得され、Server1 の適切なテーブルに挿入されます。この SSIS パッケージを毎晩実行するようにスケジュールすると、問題が発生します。最初のステップ (Server2 から行を取得する準備として Server1 のテーブルを切り捨てる) は成功しますが、テーブルを見ると行が 0 です。クエリを変更してビューを参照する結合を削除すると (望ましくない結果が得られます)、スケジュールされた SSIS は完全に機能しますが、その JOIN が必要なため、返されるレコードセットは私が望んでいたものではありません。VIEWがなくても正常に機能するため、どのように権限の問題になるかわかりません。足りないものはありますか?助けてくれてありがとう。
次のクエリは、SSIS を手動で実行した場合にのみ機能します: FilteredAccount is a VIEW 900 行以上を返す必要があり、手動で実行すると返されますが、エージェント経由で SSIS を実行すると 0 が返されます。
SELECT B.epc_cosmid, A.consultant, A.region
FROM Consultant2TC AS A JOIN FilteredAccount AS B ON A.consultant = B.epc_serviceconsultantidname
SSIS パッケージでクエリを次のように変更してスケジュールすると、正常に動作します。
SELECT A.consultant, A.region
FROM Consultant2TC AS A