【问题标题】:SQL Server Export to flat file has unexpected row breaksSQL Server 导出到平面文件有意外的换行符
【发布时间】:2016-01-08 04:40:02
【问题描述】:

我有一个有趣的问题。我有一个包含 300,000 行记录的表。当我导出到平面文件时,无论分隔符如何,它确实说它正在导出 300,000 行。但是,当我在文本编辑器中打开或尝试将该平面文件重新导入另一个 SQL Server 表时......它添加了行......价值 50k。

在像 Pilot Edit 这样的文本编辑器中查看平面文件时,我发现行不一致。发生了一个奇怪的行中断.. 因此,当我导入另一个服务器表时,它会导入一个损坏的文件......有 50k 额外的行。

出口出了什么问题?我怎样才能让它简单地准确导出表中的内容.. 数据都很好而且干净?

另外应该注意的是,我将行分隔符设置为{CR}{LF},并将其设置为管道只是为了尝试......同样的结果......

【问题讨论】:

  • 你是如何进行导出的?
  • 如果您尝试将第一个额外的换行符映射到表格的相应行/列内容,您会发现什么?有什么花哨的角色吗?一个 blob 字段?
  • @KenClement 和我多年来一直一样。选择源,将目标设置为平面文件,选择表并逐列选择,将分隔符更改为管道并导出..
  • @PhilippeGrondier 它似乎确实有一个一致的 coulmn 它打破了......自始至终都是同一个。通过查看文件来描述它的最佳方式是,就好像您在文本编辑器中按下回车键并将剩余的列向下移动到下一行......

标签: sql sql-server export export-to-csv


【解决方案1】:

解决了。在列中有一个隐藏的回车

LTRIM(RTRIM(REPLACE(REPLACE(REPLACE(COLUMN NAME, CHAR(10), ''), CHAR(13), ''), CHAR(9), ''))) 

【讨论】:

    猜你喜欢
    • 2013-08-04
    • 2017-12-22
    • 1970-01-01
    • 2016-07-11
    • 2013-06-03
    • 2015-12-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多