无法导入为空值SQL Server 2008 TSV文件

时间:2009-07-07 05:35:01

标签: sql-server ssis

我使用SQL Server 2008从TSV文件导入数据。

使用整数列导入后确认表时,

null替换为0。

如何导入为null,请帮助我!!

3 个答案:

答案 0 :(得分:2)

评论后:

  • 使用SSIS“批量插入”任务,选项页面,“保持空值”= true 这是导入向导使用的内容:但您必须先保存并编辑它,因为我在SSMS 2005向导中看不到任何选项。

答案 1 :(得分:1)

这可以在OLE DB目标编辑器中设置....有一个'保留空值'选项。

答案 2 :(得分:1)

替代那些在SQL Server Express上使用导入和导出向导的人,或任何发现自己懒得修改SSIS包的人:

在运行向导之前使用文本编辑软件,将NULL替换为您知道未在数据集中出现的有效值(例如,987654;请务必先搜索!)然后运行导出导出向导一般。如果您的数据包含每个单独的值(可能是bits或tinyints),那么您将在您之前进行一些数据按摩,但仍然可以使用具有可存储更多值的数据类型的临时表。一旦在SQL中,使用

之类的命令
UPDATE TempTable
SET Column1 = NULL
WHERE Column1 = 987654

获取它们所属的那些NULL。如果您使用过临时表,请使用INSERT INTO或MERGE将数据输入结束表。