2012-10-05 148 views
0

我使用SSIS將一些csv文件(從UNIX)遷移到SQL中。一個CSV文件包含數據等:SSIS將轉義字符轉換爲asc(不可打印字符)

ID,名稱,說明

1,12345 \噸,12345 \ 177

如果名稱或說明的模式必須是VARCHAR(6),那麼遷移由於不可打印字符顯示爲\ t,\ 177 ...

如何將轉義字符轉換爲SSIS中的不可打印字符?

\噸至CHAR(9)

\ 177 CHAR(127)

有沒有更好的解決辦法?

回答

0

你應該可以使用正則表達式regex.unescape來做到這一點。我會建議加載程序集,並使用臨時表在SQL服務器中執行此操作,請查看http://msdn.microsoft.com/en-us/magazine/cc163473.aspx

+0

感謝您的建議。我最終使用openrowset將數據存入臨時表。 SSIS csv解析器非常糟糕。然後使用正則表達式來避開不可打印的字符。 – mortdale