Функция ISNULL в SSIS - PullRequest
       45

Функция ISNULL в SSIS

0 голосов
/ 01 июня 2018

У меня есть столбец PhoneNumber varchar(50), и я хочу построить выражение для производного столбца PhoneNumberType varchar(50) на основе ниже,

IF PhoneNumber <> NULL then
Set to ""Office""
Else
Set to NULL
END IF

Я пробовал как

!ISNULL(PhoneNumber ) ? "Office" : PhoneNumber 

Ноя получаю сообщение об ошибке при сопоставлении столбца как

Столбец PhoneNumberType не может преобразовать строковые типы данных в Unicode и Unicode

Обновление: Могу ли я просто перейти кдобавьте редактор производного компонента столбца и выберите string [DT_STR] вместо автоматически сгенерированного, unicode string [DT_WSTR] тип данных в свойствах столбца?

это хорошая практика?

Ответы [ 2 ]

0 голосов
/ 05 июня 2018

Хорошо, вот ответ, который я понял, ISNULL () не работал согласно моему требованию

PhoneNumber=="" || LEN(TRIM(PhoneNumber)) == 0 ? (DT_STR, 4, 1252)NULL(DT_STR, 4, 1252) : (DT_STR,50,1252)"Office"
0 голосов
/ 03 июня 2018

Вы можете использовать следующее выражение для генерации столбца DT_STR, а также для проверки пустых строк:

ISNULL([PhoneNumber]) || TRIM(PhoneNumber) == "" ? NULL(DT_STR, 50, 1252) : (DT_STR,50,1252)"Office"
...