【发布时间】:2019-03-04 16:38:59
【问题描述】:
我正在尝试将 DAT 文件加载到 sql server 表。DAT 文件的特定列在文件的特定列中具有 �。我正在尝试使用派生列转换中的表达式替换此字符。 以下是表达式。
(DT_STR,1000,1252) REPLACE( [Comments] ,N'�','')
这是抛出错误,表达式没有得到评估。 任何人都可以在这里帮助我。 非常感谢
【问题讨论】:
-
听起来您正在使用错误的编码加载物理文件。例如,您是否尝试读取 UTF-8 文件但在 SSIS 中指定它具有 UTF-16 编码?
-
� 是读取无效代码点序列时的替换字符。它通常只是一个视觉占位符,在 SSIS 中实际上可能不是
U+FFFD REPLACEMENT CHARACTER,这将使它不受您的替换呼叫的影响。如果文件的编码不只是错误,您可能需要使用十六进制查看器仔细查看文件的字节。
标签: sql-server unicode ssis etl flat-file