使用SSMS 2005在制表符分隔文件中导入NULL值

时间:2010-03-24 17:36:23

标签: sql-server-2005 import

我正在使用SQL Server Management Studio 2005中的导入向导导入非常大的制表符分隔文本文件。某些列值为空,由字符串值“NULL”表示。但是,当我尝试导入文件时,我收到以下错误消息对话框:

SSIS Error Message

我应该使用其他值而不是NULL(有字符和数字列吗?)

2 个答案:

答案 0 :(得分:1)

您应该考虑导入到中间表或从输入文件中删除字符串“NULL”。另一种选择是手动创建SSIS包。

答案 1 :(得分:0)

如果您可以控制文件创建,最好表示没有值的null。例如,ina | delimited文件中的记录可能如下所示:

测试|| 1 | |||| TEST2

彼此相邻的两个管道表示为空。

如果你无法控制文件的格式,可能问题是单词null不会直接进入数据类型是数字类型的表,例如int。在这种情况下,您可以创建自己的SSIS pacakge并使用派生列来正确地弹出列,或者您可以将数据插入到临时表中,其中所有列都使用向导定义为varchar或nvarchar,然后使用t-sql进行清理并将数据传输到生产表。