我有一個數據庫OLE源去往Excel目標。我收到以下錯誤SSIS將SQL數據庫打包到Excel電子表格中的目標Unicode錯誤
數據流錯誤[Excel目標[88]]:列「X」不能在unicode和非unicode字符串數據類型之間轉換。
我在數據轉換中添加了將字符串列更改爲Unicode。這並沒有解決問題。任何指導將不勝感激
我有一個數據庫OLE源去往Excel目標。我收到以下錯誤SSIS將SQL數據庫打包到Excel電子表格中的目標Unicode錯誤
數據流錯誤[Excel目標[88]]:列「X」不能在unicode和非unicode字符串數據類型之間轉換。
我在數據轉換中添加了將字符串列更改爲Unicode。這並沒有解決問題。任何指導將不勝感激
轉到您的Excel目標組件 - >映射 - >將鼠標懸停在問題欄上,你會發現它是Unicode Str
。事情是這樣的:
因此,你需要一個data conversion component
源列的別名添加到DT_WSTR Unicode String
和它在Excel目標組件映射。
我複製你的問題,從而爲您提供解決方案。
IF這不起作用,然後刪除這些組件並重新添加它們,因爲這會大多解決您的問題。
嘗試使用派生列,而不是數據轉換改造,使用下列表達式
如果目的地是unicode
(DT_WSTR,50)[X]
否則
(DR_STR,50,1252)[X]
你可以看到你的目的地什麼類型您的列正在映射。我會將您的源代碼轉換爲appopiate數據類型。例如。從XXX.XXX選擇cast(columName作爲nvarchar(50)作爲ColumnName - 如果它說錯誤,那麼我會刪除你的任務並重新創建並在你的語句中寫入你的正確的SQL粘貼(它不能很好地處理元數據,所以你需要通過刪除任務或轉到高級選項來更新它)這對我工作正常 – plaidDK
檢查下面的解決方案在數據轉換中添加列的別名並將其映射到excel中 –
可以發佈ssis解決方案的屏幕截圖嗎?從源和目標設置? – plaidDK