【发布时间】:2015-10-12 18:56:35
【问题描述】:
因此,只要查询执行失败,我的 SSIS 包就会将来自查询执行的消息记录为错误。因此,例如,我的查询有 2 个打印语句,由于某些错误,查询因某种原因而失败。 SSIS 正在记录所有 2 个打印语句以及实际错误。我不希望 SSIS 包将打印消息记录为错误。我的包正在阅读有关“OnError”事件处理程序的信息。并且日志的来源设置为:System::ErrorDescription。考虑以下查询:
PRINT 'Trying to set string value to a datetime column.'
PRINT 'So i should get this error: Conversion failed when converting date and/or time from character string.'
UPDATE TempTable SET CreateDateTime = 'StringValue'
以下是 SQL Management Studio 的输出/消息。最后一行是实际错误,其余行都是打印语句。
Trying to set string value to a datetime column.
So i should get this error: Conversion failed when converting date and/or time from character string.
**Msg 3930, Level 16, State 1, Procedure pr_TempTable, Line 3 Conversion failed when converting date and/or time from character string.**
但是当我尝试执行 SQL 任务并运行此查询时,SSIS 中的 OnError 事件处理程序将消息窗口中的所有这三行视为多个错误。
【问题讨论】:
-
是的,请提供更多信息。
-
这是更多数据,但我们需要信息。存储过程是什么样的?什么会产生异常?你的错误处理是什么样的?您已将此标记为 ssis-2012 和 ssis-2008 是哪一个?如果是 2012 年,您是使用包部署还是项目部署模式?
-
“SQL Management Studio 的输出”是什么意思。是什么让您认为它将打印语句记录为错误,这是完全不同的事情?
-
@TabAlleman - 输出指的是您在运行查询或过程后在 SSMS 的消息窗口中看到的信息。
-
虽然没有解释原因,但这表明有人发现了同样的问题。显然这是标准行为,您显然必须解决它:sqlservercentral.com/Forums/Topic1354462-391-1.aspx
标签: sql ssis business-intelligence ssis-2012 ssis-2008