2015-09-05 81 views
1

我正在导入一个csv文件,由于某种原因,文本分隔符不仅仅是一个双引号,而是一个=符号和双引号。有没有办法在ssis打开文件,替换整个文件中的=号,然后将其导入到表中?SSIS导入文件csv =“”文本分隔忽略=

+0

请给一个样本行,我不确定它是用作文本限定符还是列分隔符 – Alessi

+0

这是数据样本 '=“011”,=“60”,=“011-60”,=“12971 X1”' 双引号意味着字符串,但我不知道为什么等号是在那里。事实上,在导入之前替换文件中的所有等号是ssis中的第一步,但我无法弄清楚如何做到这一点。 – DKY

+0

这是一个导入?如果是这样,只需要找到并替换所有外部ssis。您的otjer选项将数据放入登台表中,然后从登台表执行记录更新,以便引用引号和等号。或者,创建一个读取暂存表的视图,删除不需要的字符。 – Alessi

回答

1

我几乎类似的情况,你可以做我所做的:

第一数据流任务:

  1. 平面文件源与格式=分隔,文字预选赛= <无>,高级选项卡ColumnDelimiter = {LF}和OutputColumnWidt = 8000。这个想法是打开文件为1列csv来替换每行中的错误字符。 enter image description here
  2. 与式导出柱= REPLACE(Column0, “=”, “”) enter image description here

  3. 平面文件目标与相同的参数,在源。

第二个数据流任务在第一个之后运行。

  • 我们使用保存文件作为平面文件源,但这个时候,我们必须分开使用的分隔符其列=逗号和文本预选赛=报价
  • +0

    这样做!我在那里玩耍,但无法得到正确的设置,感谢您的方向! – DKY