使用SSIS从SQL Server 2005中的平面文件导入时如何保留NULL值

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用SSIS从SQL Server 2005中的平面文件导入时如何保留NULL值相关的知识,希望对你有一定的参考价值。

我已将记录导出到由“|”分隔的平面文件中似乎当我将这些记录导入新数据库时,SQL Server将NULL值视为空字段。当记录/字段为NULL时,IMy查询正常工作,因此我想要找到一种方法来保留数据中的NULL值或将空白字段转换为NULL值。我假设前者会更容易,但我不知道该怎么做。任何帮助,将不胜感激。

答案

在数据流中的目标连接中,有一个属性可以检查“保持空值”,JUst检查该属性。为什么那不是我永远不会知道的默认值。

嗯那里有什么东西。我建议您然后清理数据并将其更改为null,您可以将其作为数据流的一部分执行,也可以执行两个数据流,一个将数据插入到临时表中,然后运行exectue SQl任务来执行清理然后创建一个数据流以从登台表运行到真实表。

另一答案

我刚遇到同样的问题。我通过在数据流任务中的平面文件源的属性中更改RetainNulls属性来解决它。

另一答案

如果有人在编程时以构建包的方式查看如何执行此操作,则需要在CManage Component Wrapper对象中设置变量

CManagedComponentWrapper instanceSource = ComponentSource
...
instanceSource.SetComponentProperty("RetainNulls", true);

以上是关于使用SSIS从SQL Server 2005中的平面文件导入时如何保留NULL值的主要内容,如果未能解决你的问题,请参考以下文章

SQL Server 2005 使用 GETDATE() 作为参数通过 SSIS 运行存储过程

从 SQL Server Management Studio 2008 运行 SSIS 包

每晚数据库还原 - SSIS 包 - SQL Server 2005

如何使用 SSIS 将多个 Access 数据库导入 SQL Server

如何使用 SSIS 将 OTM 中的数据提取到 SQL Server 中?

将数据从平面文件加载到 Sql Server 表,并使用 SSIS 导出到 excel