dtsタスクで行が返されましたが、スクリプトのデバッグ時に返されません
-
20-12-2019 - |
質問
私はこれを正しく説明することを願っています。私はビューを照会するSSISスクリプトタスクを持っています。結果を使用して分析可能な値を埋め、結果のデータベース可能な行数を出力します。
SqlCommand cmd = new SqlCommand("select .....", conn);
using (SqlDataAdapter da = new SqlDataAdapter(cmd))
{
da.Fill(dt);
output += "Datatable row count " + dt.Rows.Count.ToString() + " \r\n";
}
.
Visual Studioでは、適切な結果/ rowcount(165行)を返します。パッケージを保存してSQL Serverジョブのステップとして実行すると、0のRowCountが返されます。(ジョブはエラーなしで実行されます)同じコード、同じクエリ、同じ接続、同じ信任状のみが発生したときに機能しますVisual Studioのパッケージ内での「デバッグ」が、SQL Serverジョブステップとしてパッケージを実行したときにはありません。
私を怒らせる!誰かのアイデア?多くの感謝。
解決
DTEXECコマンドラインツールまたはDTEXECUIを介して実行することをお勧めします。それはそれがパッケージの問題や職務の問題であるかどうかを判断するのに役立ちます。また、SSISスクリプトタスク内でこれを実行していますか?もしそうであれば、SSISはより標準的な(SSIS)方法でこれを行うためにいくつかの構成要素を提供します。たとえば、データフロー内でOLEDBソースを使用してから、Pipelineを渡すrowsAphectカウントを報告するためにRowCountタスクを使用できます。
所属していません StackOverflow