首页 > 解决方案 > 在 SQL 作业中执行 SSIS 包失败

问题描述

我有一个简单的 SSIS 包,只有 2 个步骤。第 1 步是一个脚本任务,它将返回特定文件夹中最后创建的文件的创建日期。第二步,它将第一步的数据保存到数据库中。这是 C# 中步骤 1 的完整代码。

string vDir = Dts.Variables["UnitDirectory"].Value.ToString();
string vDBName = Dts.Variables["DatabaseName"].Value.ToString();

var directory = new DirectoryInfo(vDir);
var myFile = directory.GetFiles(vDBName + "*").OrderByDescending(f => f.LastWriteTime).First();

DateTime creation = File.GetCreationTime(vDir + myFile);

Dts.Variables["CreatedDate"].Value = creation;
Dts.TaskResult = (int)ScriptResults.Success;

在这种情况下,我将 UnitDirectory 变量与网络共享目录一起传递。

\\192.168.0.2\Database Backup\

问题是,我可以从 SQL Server Management Studio 中的集成服务目录和 Visual Studio 执行这个包。但是,当我将它作为 SQL 作业执行时,它只是在步骤 1 中出错并给出了不明确的消息。

Script Task:Error: Exception has been thrown by the target of an invocation.

我使用我的域管理员凭据运行 SQL 作业,这些凭据可以登录到网络共享目录。当我在新安装的 SQL Server 2014 中运行时,这个问题就开始了。以前这个包在我的旧 SQL Server 中运行正常。

你能给我解决这个问题吗?根据您的经验,我需要您的解决方案。提前致谢。

标签: c#sql-serverssisssms

解决方案


推荐阅读