我有一个简单的SSIS任务,将数据从数据库导出到平面文件中。我使用双引号作为文本分隔符。当我在我的开发机上运行任务时,一切正常。然而,当我将任务移动到运行Windows 2008和SQL Server 2008 R2的暂存服务器时,CSV文件中的双引号被导出为X0022(十六进制)。
有人知道原因并且该如何解决吗?
我有一个简单的SSIS任务,将数据从数据库导出到平面文件中。我使用双引号作为文本分隔符。当我在我的开发机上运行任务时,一切正常。然而,当我将任务移动到运行Windows 2008和SQL Server 2008 R2的暂存服务器时,CSV文件中的双引号被导出为X0022(十六进制)。
有人知道原因并且该如何解决吗?
这看起来像是我们一段时间前遇到的问题。Jamie Thomson在一个博客文章中记录了它 - SQL Server 2008 SP1 CU 6 包括对 .dtsx 文件的小修改.
检查两个环境中的 SQL Server 版本:
SELECT @@VERSION
"\""
如果有帮助的话,我解决了这个问题,创建了一个最终步骤,其中包含一个脚本任务,在生成的文件中用正确的值替换所有"x0022"字符串。