【发布时间】:2018-04-20 09:30:23
【问题描述】:
我确定这里有一个明显的错误,但我尝试了许多变体,但都找不到正确的组合!
我要做的就是用撇号替换 DT_TEXT 字符串中的双引号。我已将搜索/替换转换为 DT_TEXT。这是我最近的尝试......
replace( [Summary_N],(DT_TEXT,1252)"\"",(DT_TEXT,1252)"'")
但是,SSIS 会引发错误
函数“REPLACE”不支持数据类型“DT_TEXT” 参数号 1. 参数类型不能隐式转换 转换为函数的兼容类型。要执行此操作, 操作数需要使用强制转换运算符显式强制转换。
我通过 SQL 找到了一个使用这种 CASTS 分类的解决方案,但我很想看看如何将其作为派生列来实现!
CAST(REPLACE(CAST(d.summary AS NVARCHAR(MAX)), '"','''') AS NTEXT) as [Summary]
【问题讨论】:
-
您可以将该列转换为 DT_WSTR 吗?
-
@TabAlleman。感谢您的链接。我曾考虑使用脚本,但想看看是否有其他派生列解决方案!
标签: visual-studio ssis