2016-01-08 36 views
0

我有一个有趣的问题。我有一张有300,000行记录的表格。当我输出到一个平面文件时,无论分隔符如何,它确实表示它正在导出300,000行。然而,当我在文本编辑器中打开或尝试将该平面文件重新导入到另一个SQL Server表中时,它添加了行......就像50k的值。SQL Server导出到平面文件有意外的行间隔

在Pilot Edit等文本编辑器中查看flatfile后,我看到行不一致。有一个奇怪的行中断正在发生..因此,当我导入到另一个服务器表时,它会导入一个损坏的文件...额外的50k行。

出口有什么问题?我怎样才能让它简单地输出表格中的内容......所有数据都非常干净整洁?

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

+0

您究竟如何执行导出? –

+0

,如果您尝试将第一个额外的行分隔符与表格的相应行/列内容进行映射,那么您会发现什么?任何花哨的角色?一个blob字段? –

+0

@KenClement和我多年来一样。选择来源,将目的地设置为平面文件,选择表格并逐字选择每一列,将分隔符更改为管道并导出.. – Sal

回答

1

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

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