我在 SSIS 派生列中的表达式有点挣扎。
我的源字段是 BOOLEAN 数据类型。它的目标字段是 SQL CHAR 数据类型。
** 请注意,我没有设计任何一种模式。如果我有办法,数据类型会匹配。不幸的是,这不是我的情况!
我发现了一个将 CHAR 转换为 BOOL 的 .NET 正则表达式的好例子。这与我想要完成的完全相反:
[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) 吗?任何帮助是极大的赞赏。