SSIS:为​​什么我的文本分隔符不起作用?

时间:2016-07-05 09:55:29

标签: sql-server csv ssis runtime-error truncate

最初我写了以下内容:

  

环境:    - SSIS 2012Microsoft Visual Studio

     

涉及的文件:目标管理员:OLEDB SQL Server

     

来源管理员: FLATFILE - CSV文件

    FORMAT: Delimited
    HeadRowDelimiter: {CR}{LF}
    Column Delimiter: Comma {,}
    Text qualifier: " (manually set)
    Header rows to skip: 0
    Column Width: 100
    Column Type: DT_STR
     

我的文件包含以下列:

Year, Lg..., Div Finish, Playoffs, PF, PA...OSRS, DSRS
     

我希望只检索:

Year, Lg..., Div Finish, Playoffs
     

但不是:

|2015,'NFL',...,'2nd of 4',NULL,...,-4,0.3
|2014,'NFL',...,'3rd of 4',NULL,...,0.6,-4.4
     

SSIS包将失败并显示与此类似的消息:

[NFL_Team_List [52]] Error: Data conversion failed. The data conversion for column "Playoffs" returned status value 4 and status
     

text“文本被截断,或者一个或多个字符在中没有匹配   目标代码页。“。

     

然而,看看经历了几次的数据,我   请注意以下事项:

|2015,'NFL',...,'2nd of 4','339,345,-6,Quinn,Jones,Ryan...'
|2014,'NFL',...,'3rd of 4','299,422,-123,Reeves Phillips,Brooking...'

问题出在我的分隔符上并不像分隔符!即使我设置了文字限定符设置,SSIS似乎无法在动态FOREACHLOOP中实际执行此规则,从而导致问题。

问题:

  • 为什么会这样?

  • 如何让文字限定符按设计工作?

1 个答案:

答案 0 :(得分:1)

您已将文字限定符设为"但它实际上是'