SSIS-OLE ERROR

  • 2212
  • 0

SSIS OLE連線時會有錯誤!!

 

 

 

使用SSIS(SQL Server Integration Service)MS-SQL 2005版本以後的ETL function,

在轉資料時限定資料格式一定要相同才能成功轉換,

若SQL中有一些自己給定的字串,

通常都是unicode的,但是Table在建立時若資料欄位型態為nvrachar、nchar這種就是非unicode

解決方法

到資料流程裡資料來源的屬性中

設定[自訂屬性]->[AlwaysUseDefaultCodePage](描述字元資料時,強制使用DefaultCodePage屬性值)

將值改為"TRUE"就不會再出現警告了。

 

OLE DB目的地需要再修改寫入的方法

(1)新增"資料轉換"的元件

(2)設定若為字串都轉成"UNICODE 字串"

OLE目的的對應改成"資料轉換"的相關連結,如下圖

同場加印若有

"警告: ssis 警告碼 dts_w_maximumerrorcountreached。execution 方法成功,但引發的錯誤數目 (3) 到達最大容許值 (1); 導致失敗。當錯誤數目到達 maximumerrorcount 指定的數目時,就會發生這個問題。請變更 maximumerrorcount 或修正錯誤。"

可能要去確認你轉換的字串類型或長度有問題,應該問題出在"資料轉換"元件!