У меня есть небольшая борьба с выражениями внутри производных столбцов SSIS.
Мое исходное поле - это тип данных BOOLEAN. Поле назначения - это тип данных SQL CHAR.
** Обратите внимание, что я не проектировал ни одну из схем. Если бы я поступил по-своему, типы данных совпали бы. К сожалению, это не мой случай!
Я нашел отличный пример регулярного выражения .NET, преобразующего CHAR в BOOL. Это полная противоположность тому, что я пытаюсь достичь:
[valToTranslate] == "Y" ? (DT_BOOL)1 : [valToTranslate] == "N" ? (DT_BOOL)0 : NULL(DT_BOOL)
Я безуспешно пытался реализовать формулу, обратную этому выражению. Вот моя неудачная попытка:
[valToTranslate] == 0 ? (DT_WSTR,1)"N" : [valToTranslate] == 1 ? (DT_WSTR,1)"Y" : "N"(DT_WSTR)
Я не уверен, что CAST to (DT_WSTR, 1) даже верен для полей типа данных CHAR SQL? Должен ли я использовать вместо этого (DT_STR, 1)? Любая помощь приветствуется.