出于某种原因,当我导入使用sqlplus导出的csv文件时,我似乎无法弄清楚为什么我缺少一些行。 ssis包也没有提供警告或错误。
我之所以知道这是因为当我将csv文件加载到单独的分析应用程序中时,它会获得数字列和行计数的正确总计。
但出于某种原因,SSIS似乎没有抓住所有的线......
csv文件中有6313052行,ssis导入6308607 ...
有什么想法吗?
我也尝试了不同的代码页(1250,1252和UTF8),但它们似乎没有影响
我查看了这个链接: Why all the records are not being copied from CSV to SQL table in a SSIS package
和数字我已经检查了数字2,3和4.
虽然,对于数字1,我在这个站点中描述了每个循环容器: http://help.pragmaticworks.com/dtsxchange/scr/FAQ%20-%20How%20to%20loop%20through%20files%20in%20a%20specified%20folder,%20load%20one%20by%20one%20and%20move%20to%20archive%20folder%20using%20SSIS.htm 循环浏览文件夹中的文件并导入它们。
我也考虑过丢失分隔符,但是我自己使用sqlplus导出了这些文件:
select
trim(to_char(t1.D_DTM, 'yyyy-mm-dd hh24:mm:ss'))||','||
trim(t1.TECHNOLOGY)||','||
trim(t1.VOICEDATA)||','||
trim(t2.MRKT_NM)||','||
trim(t2.REGION_NM)||','||
trim(t2.CLUSTER_NM)||','||
trim(t3.BSC_NM)||','||
trim(t1.BTS_ID)||','||
trim(t1.CSCD_NM)||','||
trim(t1.SECT_SEQ_ID)||','||
trim(t1.BND_ID)||','||
trim(t1.FA_ID)||','||
trim(t1.TCE_DTCT_CALL_SETUP_F_CNT)||','||
trim(t1.MS_ACQ_CALL_SETUP_F_CNT)||','||
trim(t1.SIGN_CALL_SETUP_F_CNT)||','||
trim(t1.BAD_FRM_CALL_SETUP_F_CNT)||','||
trim(t1.REORG_ATT_CNT)||','||
trim(t1.TCE_CALL_SETUP_F_CNT)||','||
trim(t1.WCD_CALL_SETUP_F_CNT)||','||
trim(t1.L_CALL_SETUP_F_CNT)||','||
trim(t1.TRAF_FRM_MISS_CNT)||','||
trim(t1.BCP_TMO_CALL_SETUP_F_CNT)
from table
如果我导出这样的文件,我不确定如何错过分隔符...
另外,我测试了使用LOAD DATA INFILE将这些文件导入MySql,这似乎工作正常并导入所有数据......