我有一个奇怪的问题。我需要将日文字符从表中导出到原始文本文件。当我在 SQL 中运行 select 语句时,我能够看到正确显示的字符。但是,当我运行 SSIS 包以将这些值导出到文本文件时,它们显示为?
's.
该字段的数据类型是NTEXT。有没有人遇到过这个问题?
SQL 语句:
select cast(body as nvarchar(max)) as body from msgsMarket
在 SSIS 包的平面文件连接管理器中,我已将输出编码设置为使用932
我有一个奇怪的问题。我需要将日文字符从表中导出到原始文本文件。当我在 SQL 中运行 select 语句时,我能够看到正确显示的字符。但是,当我运行 SSIS 包以将这些值导出到文本文件时,它们显示为?
's.
该字段的数据类型是NTEXT。有没有人遇到过这个问题?
SQL 语句:
select cast(body as nvarchar(max)) as body from msgsMarket
在 SSIS 包的平面文件连接管理器中,我已将输出编码设置为使用932
这不是解决方案,但可能会帮助您确定您的案例中的问题。
UTF-8
使用带有和编码的SSIS 2008 R2 创建了一个示例 SSIS 包Unicode
,并将 SQL Server 数据正确导出到平面文件。
文件中的示例 SQL 数据。描述字段是数据类型NVARCHAR
。该示例还通过将描述字段的数据类型更改为NTEXT
并且仍然正确导出平面文件来尝试。
SSIS 包是使用具有UTF-8和Unicode两个输出的数据流任务创建的。
第一个平面文件连接管理器,用于生成编码为 UTF-8 的平面文件。
使用UTF-8编码生成的输出文件。
第二个平面文件连接管理器,用于生成编码为Unicode的平面文件。
使用Unicode编码生成的输出文件。