我正在使用SQL Server Management Studio 2005中的导入向导导入非常大的制表符分隔文本文件。某些列值为空,由字符串值“NULL”表示。但是,当我尝试导入文件时,我收到以下错误消息对话框:
我应该使用其他值而不是NULL(有字符和数字列吗?)
答案 0 :(得分:1)
您应该考虑导入到中间表或从输入文件中删除字符串“NULL”。另一种选择是手动创建SSIS包。
答案 1 :(得分:0)
如果您可以控制文件创建,最好表示没有值的null。例如,ina | delimited文件中的记录可能如下所示:
测试|| 1 | |||| TEST2
彼此相邻的两个管道表示为空。
如果你无法控制文件的格式,可能问题是单词null不会直接进入数据类型是数字类型的表,例如int。在这种情况下,您可以创建自己的SSIS pacakge并使用派生列来正确地弹出列,或者您可以将数据插入到临时表中,其中所有列都使用向导定义为varchar或nvarchar,然后使用t-sql进行清理并将数据传输到生产表。