我有一個SSIS包設置爲將數據從SQL Server 2008 R2表導出到該表的MySQL版本。然而,該包執行,我約1%的行未能被導出。SSIS:SQL 2008 R2到MySQL數據丟失
我的源連接使用SQL語句
SELECT * FROM表1
所有列都是整數。其成功導出一排的一個例子是
2169,2680,3532,NULL,2169
相比的行已失敗
2168,2679,3532,NULL,2168
幾乎沒有什麼不同,我可以確定。
值得注意的是,如果我將源查詢更改爲僅嘗試傳輸單個失敗行 - 即。
SELECT * FROM表1 WHERE ID = 2168
然後記錄被細導出 - 只有當一個選擇它返回失敗多行的一部分。每次導出都會失敗。我將錯誤行重定向到一個文本文件,該文件爲失敗的行顯示-1071610801錯誤。這顯然會轉化爲: -
DTS_E_ADODESTERRORUPDATEROW:「將此行發送到目標數據源時發生錯誤。」
這並沒有真正增加我對這個問題的理解!
我想知道是否有一個鎖定問題或某些東西阻止給定的行被提取或正確插入,但如果任何人有什麼想法或建議什麼可能導致這個甚至更好的如何去解決它,他們會不勝感激。我目前處於全面損失...
目標表中是否有mybe唯一鍵,並且源中存在重複值? – Matej 2012-01-04 22:39:52
另一個想法是使用'For Each'容器,計數器變量和源sql作爲表達式進行批處理?如果您遇到問題,請尋求幫助。 – Matej 2012-01-04 22:43:55
沒有唯一的鍵 - 如果單獨導出,同一行將多次導出,而不是在與select中的其他行一起推出時導出多次。將批量去。 – user1025443 2012-01-05 11:19:00