【问题标题】:How to export Japanese characters from SQL Server 2008 database to a text file?如何将日文字符从 SQL Server 2008 数据库导出到文本文件?
【发布时间】:2012-04-24 00:35:12
【问题描述】:

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

字段的数据类型是NTEXT。有没有人遇到过这个问题?

SQL 语句

select cast(body as nvarchar(max)) as body from msgsMarket

在 SSIS 包的平面文件连接管理器中,我已将输出编码设置为使用 932

【问题讨论】:

  • 你把文件写成什么编码?
  • Asp.net Forum 这些函数应该仍然有效,并且正如@Oded 所说的所有关于编码的内容。
  • @Oded 请查看编辑,当我将查询作为“将结果保存到文本”运行时,我能够成功提取它们,但我需要将其作为自动化过程运行
  • 如果使用 UTF-8 或 UTF-16 会发生什么?
  • @Oded 如果我在 ssis 中这样做,我会接近,结果是这样的:x003C_none_x003E_あいよ_x003C_none_x003E

标签: sql sql-server-2008 ssis


【解决方案1】:

这不是解决方案,但可能会帮助您确定您的案例中的问题。

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

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

SSIS 包是使用具有 UTF-8Unicode 两个输出的数据流任务创建的。

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

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

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

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

【讨论】:

    猜你喜欢
    • 2013-07-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-31
    相关资源
    最近更新 更多