如何将日语字符从SQLServer2008数据库导出到文本文件?

如何将日语字符从SQLServer2008数据库导出到文本文件?,sql,sql-server-2008,ssis,Sql,Sql Server 2008,Ssis,我有个奇怪的问题。我需要将日语字符从表导出到原始文本文件。在SQL中运行select语句时,我能够看到正确显示的字符。但是,当我运行SSIS包将这些值导出到文本文件时,它们显示为? 字段的数据类型为NTEXT。以前有人遇到过这个问题吗 SQL语句: 在SSIS包的平面文件连接管理器中,我已将输出编码设置为使用932这不是一个解决方案,但可能有助于您确定案例中的问题 使用SSIS 2008 R2创建了一个示例SSIS包,其中包含UTF-8和Unicode编码,并将SQL Server数据正确导出到

我有个奇怪的问题。我需要将日语字符从表导出到原始文本文件。在SQL中运行select语句时,我能够看到正确显示的字符。但是,当我运行SSIS包将这些值导出到文本文件时,它们显示为

字段的数据类型为NTEXT。以前有人遇到过这个问题吗

SQL语句:


在SSIS包的平面文件连接管理器中,我已将输出编码设置为使用
932
这不是一个解决方案,但可能有助于您确定案例中的问题

使用SSIS 2008 R2创建了一个示例SSIS包,其中包含
UTF-8
Unicode
编码,并将SQL Server数据正确导出到平面文件

文件中的示例SQL数据。说明字段的数据类型为
NVARCHAR
。该示例还通过将描述字段的数据类型更改为
NTEXT
进行了尝试,平面文件仍然正确导出

SSIS包是使用一个数据流任务创建的,该任务有两个UTF-8和Unicode输出

第一个平面文件连接管理器,用于生成编码为UTF-8的平面文件

使用UTF-8编码生成的输出文件

第二个平面文件连接管理器,用于生成编码为Unicode的平面文件

使用Unicode编码生成的输出文件


这不是一个解决方案,但可能有助于您确定案例中的问题

使用SSIS 2008 R2创建了一个示例SSIS包,其中包含
UTF-8
Unicode
编码,并将SQL Server数据正确导出到平面文件

文件中的示例SQL数据。说明字段的数据类型为
NVARCHAR
。该示例还通过将描述字段的数据类型更改为
NTEXT
进行了尝试,平面文件仍然正确导出

SSIS包是使用一个数据流任务创建的,该任务有两个UTF-8和Unicode输出

第一个平面文件连接管理器,用于生成编码为UTF-8的平面文件

使用UTF-8编码生成的输出文件

第二个平面文件连接管理器,用于生成编码为Unicode的平面文件

使用Unicode编码生成的输出文件


您将文件写入的编码是什么?这些函数应该仍然有效,正如@Oded所说的,它们都是关于编码的。@Oded请参见编辑,当我以“将结果保存到文本”的形式运行查询时,我能够成功地提取它们,但我需要将其作为一个自动过程来运行。如果使用UTF-8或UTF-16会发生什么?@Oded如果我在ssis中这样做,我会接近,结果是这样的:x003C_none_x003E_あいよ_x003C_none_x003e您将文件写入的编码是什么?这些函数应该仍然有效,正如@Oded所说的,它们都是关于编码的。@Oded请参见编辑,当我以“将结果保存到文本”的形式运行查询时,我能够成功地提取它们,但我需要将其作为一个自动过程来运行。如果使用UTF-8或UTF-16会发生什么?@Oded如果我在ssis中这样做,我会接近,结果是这样的:x003C_none_x003E_あいよ_x003C\u无\u x003E
select cast(body as nvarchar(max)) as body from msgsMarket