症状
包含多个空值的表上执行 SQL Server 2014年集成服务 (SSI) 包时,SSIS 包可能会导致目标列中不正确的结果,如果满足以下条件︰
-
在包中,您可以使用 Unpivot 转换规范化表中的数据集。
-
Unpivot 变换的表达式中,您为多个目的列透视表中的数据集。
具体来说,如果列的数据类型是数值数据类型,则 null 值可能会更改为 0 (零);如果列的数据类型是字符串数据类型,null 值可能会更改为空字符串。
解决方案
第一次修复该问题的SQL Server累积更新包
对于 SQL Server 2014 SP1 的累积更新 1/en-us/help/3067839
对于 SQL Server 2014年累积更新 8/en-us/help/3067836
SQL Server 的每个新累积更新包含以前的累积更新所包含的所有修补程序和所有安全修补程序。查看 SQL Server 的最新累积更新:
修补程序信息可以从 Microsoft 获得受支持的修复程序。然而,此修补程序仅用于解决本文中描述的问题。仅对出现这一特定问题的系统应用此修补程序。
如果此修复程序可供下载,则在此知识库文章顶部"提供修补程序下载"部分。如果未显示此部分,将申请提交到 Microsoft 客户服务和支持,以获取此修复程序。
注意:如果出现其他问题或需要任何故障诊断时,您可能需要创建单独的服务请求。对于不符合此特定的修补程序的其他支持问题和事项将照常收取费用。有关 Microsoft 客户服务和支持电话号码或创建单独的服务请求的完整列表,请访问下面的 Microsoft 网站︰
http://support.microsoft.com/contactus/?ws=support注意:"修补程序下载可用"窗体显示获取此修复程序的语言。如果看不到您的语言,则修补程序没有那种语言的版本。
参考资料