2015-09-05 116 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