2017-04-20 119 views
0

我有一個數據庫,大多數字符串存儲在varchar列中。 一列存儲人名,一些存有撇號,例如「奧馬利」。SSIS,處理代碼頁,unicode

當我輸出這個數據到csv時,撇號變成了「O Malley」。

我已經嘗試了一些步驟,但不能得到這個解決方案,可以使用一些建議。到目前爲止,我有:

  • 將所有字符串轉換爲Unicode。
  • 改變在SSIS任務的代碼頁(OLEDB源,腳本任務&平面文件連接器65001
  • 改變了「統一」屬性平面文件連接目的地爲「True」,打開時,這毀了CSV像現在在Excel中,所有的數據都在第一列,EXCEL無法看到它是一個分隔的文件。

任何建議什麼嘗試下?

感謝。

+1

你在觀察這個奇怪的字符快照? Excel中?記事本?你能確認這是一個'varchar'字段,而不是'nvarchar'字段嗎? SSIS元數據瀏覽器說數據類型是什麼?如果你在記事本++中打開你的CSV,它是什麼類型的編碼? –

+0

我在excel中看到了不需要的字符,但是如果在記事本中打開,數據看起來很正常,沒有不需要的字符 –

+1

所以這是一個優秀的問題。這有助於:https://scrapehero.freshdesk.com/support/solutions/articles/5000617795-how-to-open-csv-files-that-have-unicode-unprintable-or-weird-looking-characters-in- Excel中。如果目標是要有一個可以在Excel中打開的文件,然後嘗試一個Excel目標(而不是CSV目標) –

回答

0

我已經試過這一點。數據被加載到csv沒有任何錯誤,告訴我如果我缺少的東西,我會相應地更新答案。

代碼頁:1252(ANSI - 拉丁文I)

數據庫表包含表:的Emp 列: ID INT, 名稱VARCHAR(200) enter image description here

平面文件目標屬性是:

enter image description here

這裏是文件在Excel

enter image description here

+0

感謝您的期望,只有當我在Excel中打開緩存但不存在時,不需要的字符纔會出現,如果我打開記事本中的csv。 –