我试图通过命令行导出一个带有标题的PostgreSQL表到CSV文件,但是我把它导出到CSV文件,但没有标题。

我的代码如下:

COPY products_273 to '/tmp/products_199.csv' delimiters',';

当前回答

复制(anyql查询datawanttoexport)到' fileablsoutepathwiname '分隔符',' CSV头;

使用这个u也可以导出数据。

其他回答

当我没有权限从Postgres写文件时,我发现我可以从命令行运行查询。

psql -U user -d db_name -c "Copy (Select * From foo_table LIMIT 10) To STDOUT With CSV HEADER DELIMITER ',';" > foo_data.csv

试试这个: “从\tmp\products_199.csv' DELIMITER ',' CSV头'复制products_273”

最简单的方法(使用psql)似乎是使用——csv标志:

psql --csv -c "SELECT * FROM products_273" > '/tmp/products_199.csv'

下面是我是如何使用pgsl连接到Heroku PG数据库的:

我必须首先将客户端编码更改为utf8,就像这样:\encoding utf8

然后将数据转储到CSV文件:

\copy (SELECT * FROM my_table) TO  C://wamp64/www/spider/chebi2/dump.csv CSV DELIMITER '~'

我使用~作为分隔符,因为我不喜欢CSV文件,我通常使用TSV文件,但它不让我添加'\t'作为分隔符,所以我使用~,因为它是一个很少使用的字符。

这是

psql dbname -F , --no-align -c "SELECT * FROM TABLE"