如何将.csv文件导入Hasura PostgreSQL数据库?

时间:2017-11-19 18:02:22

标签: postgresql csv hasura

我在.csv文件中有数据要导入我的Hasura集群的PostgreSQL数据库实例。最好的方法是什么?

2 个答案:

答案 0 :(得分:5)

1)将Hasura Postgres端口转发到本地端口,并在一个终端窗口中保持运行:

$ hasura microservice port-forward postgres -n hasura --local-port 6432

2)使用适当的架构创建table_name以吸收您的CSV数据;使用psql将数据流传输到postgres。执行另一个另一个终端窗口:

$ psql -h localhost -p 6432 -d hasuradb -U admin -c \
  "copy table_name from STDIN with delimiter as ',';" \
  < /path/to/file.csv

您将拥有表格table_name

中CSV文件的数据

答案 1 :(得分:0)

在此处添加我的答案以供参考。在Heroku中部署Hasura时,我们可以通过从Heroku资源仪表板访问Postgres插件来获取Postgres数据库的临时凭证。然后,您可以使用“设置”标签上提供的网址直接访问数据库。

psql 'postgres://UUUUUU:PPPPP@ec2-54-247-72-30.eu-west-1.compute.amazonaws.com:5432/DBNAME'

然后在Postgres控制台中,您可以执行以下操作:

\copy countryinfo from 'countryinfo.csv' with delimiter as E'\t';

上面提供了从Geonames.org下载的制表符分隔文件。注意:我在输入之前删除了注释行。