我想在SSIS中将数据从excel导入SQL服务器时保留null,blank,na值。我使用数据流任务将数据从excel导入到sql server。如上所述,na值有时会转换为null或为空。请帮忙
答案 0 :(得分:0)
您的问题似乎是Excel连接管理器根据默认的8行样本大小将列识别为整数。一旦将其标识为整数,其余行将被视为相同,并且任何无法转换为整数的值都将被视为NULL
。
在SSIS中创建连接后,选择连接,并在属性窗格中针对Connection String
,最后添加IMEX=1
。
这是一个例子
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Test\New Microsoft Excel Worksheet.xls;Extended Properties="Excel 8.0;HDR=YES;IMEX=1 ";
请注意IMEX论证并非万灵药。它通常被描述为(错误地)为“将所有值读作文本”。它的作用是指示Excel驱动程序进入“导入模式”,指示驱动程序解释具有数字和文本的列,这些列只能作为文本导入,而不是根据它的常规“猜测”进行解释。