2011-07-14 141 views
0

SQL 2008:使用SQL SSIS包,我將Excel工作表導出到文本文件,然後導出到SQL數據庫。我決定遵循導出過程的兩個步驟,因爲SQL數據庫與某些Excel列之間的數據類型不匹配。當數據類型不匹配時,SSIS包會停止導出過程,但會導致SSIS包成功運行。導出 - 文本文件 - SQL數據庫

爲了避免部分導入Excel工作表,我決定按照兩個步驟導出。當Excel工作表的不同數據類型轉到文本文件時,它會反映爲字符串。當我從文本文件導出到SQL數據庫時,它會作爲STRING導入,並且由於數據類型不匹配而導致再次導出失敗。

主要問題:如果在第n行的Excel工作表中存在不匹配,則導出將在第n行停止。不過,我們將輸出作爲Package Successful獲得。 如何解決Excel數據導出到SQL數據庫的數據類型不匹配問題?

回答

2

您可能會略有不同,如下所示:將excel電子表格直接讀取到一個或多個臨時表,但強制所有列爲VARCHAR/NVARCHAR列。這將使您可以將所有行讀入SQL,而不會出錯。然後創建第二個DFT從登臺表讀入正確定義的表(正確定義字段類型/大小)。您可以在第二個DFT中構建錯誤日誌記錄,將錯誤的行抽入錯誤表中供以後關注。