Postgresql:带有转义换行符的CSV导出

时间:2013-08-29 14:11:35

标签: postgresql csv export-to-csv

我使用(全部)此处发布的说明从postgresql数据库导出了一些数据:Save PL/pgSQL output from PostgreSQL to a CSV file

但是一些导出的字段包含换行符(换行符),因此我得到了一个CSV文件,如:

header1;header2;header3
foobar;some value;other value
just another value;f*** value;value with
newline
nextvalue;nextvalue2;nextvalue3

如何逃避(或忽略)theese换行符?

1 个答案:

答案 0 :(得分:5)

如果包含它们的字段用双引号括起来,则CSV支持换行符。

所以,如果你在文件的中间有这个:

just another value;f*** value;"value with
newline"

它将被视为1行数据,分布在2行,包含3个字段,只是工作。

另一方面,没有双引号,它是一个无效的CSV文件(当它宣传3个字段时)。

虽然没有正式的CSV格式规范,但您可以查看RFC 4180以了解通常适用的规则。