gpt4 book ai didi

logging - SSIS Sql参数记录

转载 作者:行者123 更新时间:2023-12-03 08:01:44 24 4
gpt4 key购买 nike

sql server 2008 ssis程序包中是否有一种方法可以自动记录传递给存储过程和/或命令的参数?
我正在尝试从链接到全局OnError事件的脚本任务访问这些信息,但它似乎不是对当前sql命令的引用,是否可以通过常规方法执行?还是我必须为我触发的每个sql命令实现自定义日志记录?

提前致谢

最佳答案

这可能会有所帮助,因为我在一个项目中定义了许多Execute Process Tasks。每个容器都有自己想要记录的一组输入和输出,因此我的方法是添加一个OnPostExecute事件以及与其关联的脚本任务。我在那里触发了信息事件,以记录该任务中发生的事件的详细信息。显然,这假定您已选择OnInformation事件进行记录。

        try
{
//User::ExecuteArgs,User::ExecuteError,User::ExecuteOutput
string args = Dts.Variables["ExecuteArgs"].Value.ToString();
string output = Dts.Variables["ExecuteOutput"].Value.ToString();
string error = Dts.Variables["ExecuteError"].Value.ToString();
bool fireAgain = false;
if (!string.IsNullOrEmpty(output))
{
Dts.Events.FireInformation(0, "Post execute output", string.Format("Output: {0}", output), string.Empty, 0, ref fireAgain);
}

if (!string.IsNullOrEmpty(error))
{
Dts.Events.FireWarning(0, "Post execute error", string.Format("Error: {0}", error), string.Empty, 0);
}

if (!string.IsNullOrEmpty(args))
{
Dts.Events.FireInformation(0, "Post execute args", string.Format("Args: {0}", args), string.Empty, 0, ref fireAgain);
}

}
catch (Exception ex)
{
this.Dts.Events.FireWarning(0, "Post package execution", string.Format("Trouble accessing variables {0}", ex.ToString()), string.Empty, 0);

}

关于logging - SSIS Sql参数记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8790707/

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