2015-08-24 30 views
1

我目前正在使用Microsoft SQL Server Management Studio的一个项目,并在以.csv格式保存文件时遇到了问题。特别是我提取的一些列是数据类型nvarchar,并且包含1个单元格内的多行。带有制表符的SQL Server Management Studio数据提取

当导出数据到一个.csv文件,Excel会自动没有下降到线无论我选择(,tab,或|),其分隔符。我认为这是由于CHAR(13)和/或CHAR(10)存在于某些单元内。

已经适用于我的是用其他字符替换CHAR(10)/CHAR(13),但这对数据完整性的干预太多了。

我能够得到我需要的SSRS工具,但是考虑到大量的数据,我想知道是否有办法设置SQL Server Management Studio,因此它会“锁定”单元格包含,如果单元格包含多行/行,它仍将显示在一个单元格中。

我已经尝试了一些关于这里和其他一些资源的文章,但他们中没有人似乎回答了这个具体问题。

任何帮助将不胜感激。

+0

当您在记事本中打开csv时会发生什么? – Rajesh

+0

什么包含.csv? –

+0

在记事本中,它似乎没有放弃该行,但是当从记事本复制到excel中时,它会再次删除该行。 –

回答

1

当您从SSMS导出数据时,将来自每个字符串列的数据加引号会导致分隔符之间的数据被视为单个数据字段。

在SSMS中,有一个选项可用于工具 - >选项 - >查询结果 - > SQL Server - >结果到网格,在保存.csv结果时称为“引用包含列表分隔符的字符串”。

对不起,以上行不适用于换行符。我读了一个SO here,它有一些有用的建议。

的最相关的:

  1. 的需要的一个,只是削减从SSMS的粘贴到Excel。

  2. 如果您想以更自动化的方式使用SSIS,请使用SSIS。

+0

谢谢你的回复,哈维。我最初选择了这个选项,除非我在重新选择它之后需要做某些事情,否则由于某种原因它不适用于我。 –

+0

使用记事本打开文件时,是否包含“? – HarveyFrench

+0

Nope。”的字符串字段。可能是因为文件导出为.csv而不是.txt? –

相关问题