2010-01-19 106 views
0

這可能是SSIS中的一項簡單任務,但對該工具幾乎沒有經驗並且未能在文檔中找到答案,所以我轉向這裏的專家。我很感激我可能得到的所有幫助。在SSIS中轉換數據

我有一個SSIS包,它讀取Excel電子表格的內容並將信息轉儲到數據庫表中。這很簡單。但是,電子表格中用於日期的列有時會在其中包含一個「0」零。如果該值爲零,我需要將其轉換爲以下日期; '12/31/9999',並將該值保留在相應的列中。

我目前有一個數據流任務定義與Excel源和OLE DB目的地。我的假設是我需要在這兩個任務之間進行數據流轉換。我找不到想要工作的人。我使用的是SQL Server 2005和Visual Studio 2005的

感謝,

安德魯

回答

3

我會假設你的Excel數據源有列設置爲一個字符串。從那裏你應該能夠使用派生列轉換。

它的語法有點棘手。這是我能夠從頭頂上想出來的。我會看看是否有相當於ISDATE()函數,因爲這會比僅檢查「0」更強大。

my_string=="0" ? (DT_DBDATE)"12/31/9999" : (DT_DBDATE)my_string 
+0

這對我有效。我無法在SSIS中找到ISDATE函數,比較字符串對於我的需求已經足夠好了。謝謝。 – 2010-01-19 17:05:23

+0

我很高興它有幫助。由於它看起來像你是新的,如果答案適合你,那麼你應該接受它(點擊答案旁邊的複選標記以使其變成綠色),以便其他人可以快速找到問題的答案。 – 2010-01-19 18:21:17