gpt4 book ai didi

c# - ssis包执行直接成功,通过c#代码执行失败

转载 作者:行者123 更新时间:2023-12-04 19:32:13 25 4
gpt4 key购买 nike

我有以下代码似乎可以正常执行来自 c# 的 SSIS 包,但每次变量“Resp”返回失败,即使当我直接在 SSIS 中执行它时包通过也是如此。

同样,该包包含一个写入 SQL 服务器表的脚本组件。当包直接在 SSIS 中执行时,一切正常,但当通过 C# 使用下面的代码调用相同的包时,没有任何反应。我不知道我做错了什么。帮助!

string packageLocation = @"c:\packageLocationPath";
Package pkg;
Application app;
app = new Application();
pkg = app.LoadPackage(packageLocation, null);
var Resp = pkg.Execute();

最佳答案

检测错误

首先你必须阅读包引发的错误。有两种方法可以检测这些错误:

(1) 循环错误

您可以通过访问 Errors 属性来遍历包错误。例如:

if(p.Errors.Count > 0){
foreach(DtsError err in p.Errors){
Messagebox.Show(err.Description);
}
}

更多信息:

(2) 从包中启用日志记录

您可以通过启用日志记录选项从包中捕获所有错误、警告和信息:


可能的故障原因

  1. 如果您使用 Windows 身份验证连接到 SQL,请确保已授予用于通过 C# 执行应用程序的用户帐户以建立连接。
  2. 如果包正在访问文件系统,请确保用户具有访问这些文件所需的权限

关于c# - ssis包执行直接成功,通过c#代码执行失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60177300/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com