如何调试SQL Server代理作业?

时间:2013-05-30 17:41:54

标签: ssis

我有两个SSIS软件包,它们在本地计算机上运行良好。我可以将它们导入服务器上的SSIS并执行它们,没有任何问题。但是,我需要每天凌晨3点连续运行它们。因此,我创建了一个SQL Server代理作业,其中包含两个步骤。第一步成功运行第一个包。第二步应该运行第二个包但它失败并显示以下错误消息:

  

信息       以用户身份执行:IT-DEV \ itdev。 Microsoft(R)SQL Server执行包实用程序版本11.0.2100.60(适用于64位版权所有(C)   微软公司。版权所有。开始时间:下午1:27:21   错误:2013-05-30 13:27:21.53代码:0x00000001来源:创建   IT DEV上的文本文件说明:已抛出异常   调用的目标。结束错误DTExec:包执行   返回DTSER_FAILURE(1)。开始时间:下午1:27:21完成时间:1:27:21   PM经过:0.375秒。包执行失败。这一步   失败。

两个软件包都会将一些文件从一个目录移动到另一个目录并完成一些工作。它们都使用相同的代理在相同的安全上下文中运行。我可以看到工作从第1步成功完成,但第2步再次失败。我已经查看了每个可能的步骤设置,看不出任何差异。因此,我如何获得更具描述性的信息,以便我知道真正的问题是什么。我猜测它的权限,但两个包在类似的位置需要相同的权限才能完成类似的工作。一个运行,另一个运行。请帮忙。提前谢谢。

仅供参考我还打开了SSIS登录并将所有内容写入文件,但下面的消息是我看到的唯一错误。


更新

我最终在脚本任务内部写了一个文本文件,试图找出问题所在。我似乎陷入了困境:

string connStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + myPath + ";Extended Properties=\"text;HDR=NO;FMT=TabDelimited\"";
OleDbDataAdapter adapter = new OleDbDataAdapter("SELECT * FROM MYFILE.txt", connStr);
outfile.WriteLine("Adapter Created");
DataTable dtFiles = new DataTable();
adapter.Fill(dtFiles);
outfile.WriteLine("Filled DataTable");

我从未见过"填充DataTable"在我写的文件中......最后一个条目是"适配器创建"。

1 个答案:

答案 0 :(得分:0)

原来我需要替换它:Microsoft.Jet.OLEDB.4.0与此:Microsoft.ACE.OLEDB.12.0因为我在Windows Server 2008 64位上运行代理作业。