将数据从本地 .CSV 文件复制到远程服务器中的 pgsql 表

Mic*_* C. 4 postgresql

我试图将数据从本地机器的 csv 文件复制到名为 states 的远程 pgsql 表中,但我收到一个错误:“FROM”处或附近的语法错误。有人可以指导我为什么会收到此错误吗?

   COPY FROM STDIN states FROM '/Users/Shared/data.csv'  DELIMITER AS ',';
Run Code Online (Sandbox Code Playgroud)

dmg*_*dmg 6

问题是文件的路径在远程服务器中,而不是本地服务器中。

您需要 psql 并将文件通过管道传输到 STDIN:

psql -h host -d remoteDB -U myuser -c  "copy states from STDIN with delimiter as ',';" < /path/file.csv
Run Code Online (Sandbox Code Playgroud)

或者你也可以这样做:

cat /path/file.csv | psql -h host -d remoteDB -U myuser -c  "copy states from STDIN with delimiter as ',';"
Run Code Online (Sandbox Code Playgroud)