Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL Server/SSIS-将存储过程导出到平面文件csv,保留回车/换行符_Csv_Ssis_Sql Server 2012 - Fatal编程技术网

SQL Server/SSIS-将存储过程导出到平面文件csv,保留回车/换行符

SQL Server/SSIS-将存储过程导出到平面文件csv,保留回车/换行符,csv,ssis,sql-server-2012,Csv,Ssis,Sql Server 2012,我需要将结果集从SQL Server存储过程导出到csv文件。要导出的字段之一是notes字段,它可以包含引号和回车/换行符 我正在使用SSIS数据流任务从存储过程获取结果集,然后将结果集发送到平面文件目标 我遇到的问题是如何处理回车/换行。当行分隔符为{CR/LF}时,当它在notes字段中遇到此分隔符时,它将启动一个新行。创建平面文件目标时,我正在使用预览查看输出 数据库注释字段的数据类型为NVARCHAR(MAX) 在将记录详细信息导出到SSRS报告时,我也遇到了同样的问题。注释字段未持久

我需要将结果集从SQL Server存储过程导出到csv文件。要导出的字段之一是notes字段,它可以包含引号和回车/换行符

我正在使用SSIS数据流任务从存储过程获取结果集,然后将结果集发送到平面文件目标

我遇到的问题是如何处理回车/换行。当行分隔符为{CR/LF}时,当它在notes字段中遇到此分隔符时,它将启动一个新行。创建平面文件目标时,我正在使用预览查看输出

数据库注释字段的数据类型为NVARCHAR(MAX)

在将记录详细信息导出到SSRS报告时,我也遇到了同样的问题。注释字段未持久化回车符/换行符,导致文本混乱

任何帮助都将不胜感激。我已经做了好几个小时了


谢谢

将字段数据类型更改为
text
ntext

您还可以进行双重替换:

  • 用SP中的2个唯一字符组合替换CR和LF
  • 在SSIS/SSRS中将这些字符集替换为CR和LF

当你说“它开始新的一行”时,你的确切意思是什么?查看写入的文件内容,而不是data viewer。底线:如果数据中包含行分隔符,则可能需要选择新的行分隔符或转义notes字段中出现的分隔符。如何处理carriereturn和LineFeed:省略或替换任何内容?我希望保留回车符和换行符,我尝试过用双引号将notes字段包装起来,并用单引号替换notes字段中已经存在的任何双引号。我似乎无法让SSI正确地执行任何操作。这将消除他们的响应表示希望保留的CF/LF。