2013-11-09 71 views
0

我有我正在轉換下列方式列:SSIS:布爾轉換,只得到NULL值

Column to be converted

,你可以看到,我正在一列(即是類型爲nvarchar (255)之前) 並將它變成Bool,因爲所有的值都是eather「Ja」或「Nein」(德語中的「Yes」和「No」)

包運行完全無缺,甚至開始歡呼,認爲我找到了解決辦法。 但在表中,我只獲取NULL值? NULL Values

這是如何解釋的? 有沒有人知道我在做什麼錯? 非常感謝 (注意:我使用的值來自SharePoint列表源,在將轉換過程插入到OLE DB之後)。

+0

1)轉換後,ColumnFromNVARCHARToBOOL列中的值是什麼? (請用數據查看器檢查) – luviktor

+0

2)數據庫中的目標列類型是什麼? – luviktor

+0

- 2)數據庫中的目標列類型是「位」 – gberisha

回答

1

try代碼:

Column == "Ja" && !isnull(Column) ? TRUE : FALSE 
+0

試過了,仍然只有NULL值 – gberisha

+0

感謝您的幫助。我剛剛發現修復了我的問題, 錯誤地指定了數據庫目標上的列! 非常感謝您的幫助 – gberisha

0

添加一個 「派生列」,表達式爲: ISNULL([你的專欄])? ([Your Column] ==「Y」?TRUE:FALSE):NULL(DT_BOOL)

如果單元格爲空,則此方法也可以返回空值。

+0

嗨,關於你從上面的表情。我的OLE DB數據源沒有可用於設置布爾邏輯的列。只有目標列具有布爾列。我應該只在表達式中分配[0]值嗎?如果是這樣,語法是什麼?只需輸入0即可。 – enigma6205