我希望我能正确解释这一点。我有一个SSIS脚本任务,它非常简单地查询视图,用结果填充数据表并输出结果数据表的行数。在DTS任务中没有返回行,但在调试脚本时返回
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的行数(作业运行时没有错误)相同的代码,相同的查询,相同的连接,相同的凭据只有当我点击在Visual Studio中的“调试”包中,但是当我作为SQL Server Job步骤执行包时不会。
让我生气!任何任何想法?非常感谢。
如果打开分析器,您是否看到打开的连接并执行相同的查询? – billinkc
谢谢。在Profiler中,我看到批量启动和textdata显示选择查询,然后BATCH完成但没有别的(我没有使用Profiler很多)。我输出文本的数据表行数的任一侧,它输出“conn open”,然后rowcount然后“conn closed”。 – user2996958