子程序包成功完成后,SSIS父程序包失败,并且#34;用户登录失败..."错误

时间:2014-05-01 14:34:44

标签: sql sql-server-2008 tsql ssis

我有一个父包调用子包来进行文件加载。在父包调用子包之后,子包成功完成,然后在子包将控制权返回给父包后,父包失败:

"SSIS Error Code DTS_E_OLEDBERROR.  An OLE DB error has occurred. 
Error code: 0x80040E4D.  An OLE DB record is available.
Source: "Microsoft OLE DB Provider for SQL Server"  
Hresult: 0x80040E4D  Description: "Login failed for user [mySQLAgent]."."

父包非常简单......只不过是一个sql任务,每个包含文件任务的包含器和一个子包调用,最后是for-each容器之后的另一个sql任务。只有在某个文件夹中找到文件时,才会执行foreach容器。如果没有找到文件,父包将成功执行并完成。

Child和Parent包都使用我没有理由相信的XML配置文件无法正常工作。在这些配置中,有一些变量可以将值从父级传递给子级。

它的价值在于,它们是2008年的包,在Dev中成功执行和完成。此扫描范围仅发生在质量检查中。在标记这个权限问题并推回我们的DBA之前,有什么我可以尝试或检查的吗?

1 个答案:

答案 0 :(得分:0)

结果证明是可疑的权限问题。我们确定它的方式是在同一个环境中运行包,但是在DBA拥有的ID下。 pacak完成没有任何问题,就像在Dev中一样。正如上面提到的@N_West,这听起来像权限问题而且确实如此。