将Postgres表导出到yaml文件

问题描述

我在django工作,试图弄清楚如何将数据库中的表导出到yaml文件,但是找不到解决方案。可能是一些简单的更改。 现在我写了一篇bash文件,可以将我的客户表导出到可以正常工作的CSV文件中:

export_customer.sh

echo "Enter the directory path to save the file"
read path_to_save
file_name="myFile.csv"

psql --dbname=mydb --host=localhost --username=mydb -c "copY
(
select name,id from customers
) to stdout DELIMITER ',' CSV HEADER" > "${path_to_save}/${file_name}"

我的客户表看起来像这样:

id             name
-------------------
 1             xxxxx
 2             yyyyy

现在有人有没有办法将其导出到yaml文件中?

解决方法

这可能有点绕道,但是如果您不关心性能,则可以将表导出为JSON,然后将JSON转换为Yaml。

  1. 表转换为JSON:https://dba.stackexchange.com/questions/90482/export-postgres-table-as-json

  2. JSON转换为yaml:dump json into yaml