5つの文字列を持つテーブルがあり、すべてNULLにすることができます。このテーブルからデータを読み込んだら、空の文字列に変換する必要があります。その理由は、これらの列を(条件付き分割を使用して)同じスキーマの別の表の列と比較する必要があり、NULL値によって比較がNULLに評価されるためです。SSISヌル値に関する質問
SSISには、NULLを空の文字列に変換する機能がありますか、またはNULLを処理する必要はありませんか?
5つの文字列を持つテーブルがあり、すべてNULLにすることができます。このテーブルからデータを読み込んだら、空の文字列に変換する必要があります。その理由は、これらの列を(条件付き分割を使用して)同じスキーマの別の表の列と比較する必要があり、NULL値によって比較がNULLに評価されるためです。SSISヌル値に関する質問
SSISには、NULLを空の文字列に変換する機能がありますか、またはNULLを処理する必要はありませんか?
派生列変換を使用できます。私は現在VSを開いていませんが、次のようなものを使用します:
IIF(ISNULL(column)?"":column)
を式として使用し、元の列を置き換えます。
UPDATE:以下示唆したように、IIF
を削除する必要があります。クエリで
ISNULL(column)?"":column
次のように列をラップ...
SELECT ISNULL(col1,'') AS [col1]
,ISNULL(col2,'') AS [col2]
,ISNULL(col3,'') AS [col3]
,ISNULL(col4,'') AS [col4]
,ISNULL(col5,'') AS [col5]
正しい構文は(ISNULL(列) "":列?)であるクエリでIIF
なしこのように使用することができます
CASE Tablename.ColumnName WHEN NULL THEN ' ' ELSE Tablename.ColumnName END AS 'Column Name'
これは、あなたの入力にクエリを指定する場合は、私がSQL DBA/DB開発者として好むバージョンです列の周りにISNULLを追加するのはかなり簡単で、SSISで追加の変換を行う必要はありません。場合によってはNULLが許可されているテーブルを持つSSISパッケージをたくさん開発していて、しばしばNULLを許可する列に対してのみISNULL関数を使用してSELECTステートメントを作成するスクリプトを作成することもできます。 – Jeff