gpt4 book ai didi

postgresql - 创建从我计算机上的 CSV 文件复制到位于 Postgres 中另一台计算机上的数据库的查询

转载 作者:行者123 更新时间:2023-11-29 14:11:29 24 4
gpt4 key购买 nike

我正在尝试创建一个查询,将数据从我计算机上的 CSV 文件复制到另一台计算机上的 Postgres 数据库。

我们的Postgres DB在另一台电脑上,我一个人做数据导入和查询。我已经使用以下方法成功地将数据从我计算机上的 CSV 文件复制到 PSQL 控制台中的数据库:

\COPY table_name FROM 'c:\path\to\file.csv' CSV DELIMITER E'\t' HEADER;

但是当使用 SQL 编辑器编写查询时,我使用与上面相同的代码,但开头没有“\”。我收到以下错误:

ERROR:  could not open file "c:\pgres\dmi_vehinventory.csv" for reading: No such file or directory
********** Error **********
ERROR: could not open file "c:\pgres\dmi_vehinventory.csv" for reading: No such file or directory
SQL state: 58P01

我假设查询实际上是在尝试在 DB 的计算机上而不是在我自己的计算机上查找文件。

我如何编写一个查询来告诉 Postgres 在我的计算机而不是数据库的计算机上查找文件?

任何帮助将不胜感激!

最佳答案

\COPY 是一个正确的方法,如果你想从本地计算机(你盯着 psql 的计算机)上传文件

当你想从远程目录上传到远程主机时COPY是正确的

这是一个例子,我已经用 psql 连接到远程服务器:

test=# COPY test(i, i1, i3)
FROM './test.csv' WITH DELIMITER ',';
ERROR: could not open file "./test.csv" for reading: No such file
test=# \COPY test(i, i1, i3)
FROM './test.csv' WITH DELIMITER ',';
test=# select * from test;
i | i1 | i3
---+----+----
1 | 2 | 3
(1 row)

关于postgresql - 创建从我计算机上的 CSV 文件复制到位于 Postgres 中另一台计算机上的数据库的查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21761036/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com