簡體   English   中英

從 .csv 文件復制到遠程 PostgreSQL 數據庫(在 Linux 服務器中運行)

[英]COPY FROM .csv file to a remote PostgreSQL Database (Running in Linux Server)

我正在嘗試使用以下命令將 .csv 文件中的數據導入 Linux 服務器中托管的 PostgreSQL 數據庫:

COPY areas_brasil FROM 'C:/Temp/RELATORIO_DTB_BRASIL_MUNICIPIO.csv' with delimiter '|' null 'NULL';

但我收到以下錯誤:

錯誤:無法打開文件“C:/Temp/RELATORIO_DTB_BRASIL_MUNICIPIO.csv”進行讀取:沒有此類文件或目錄 提示:COPY FROM 指示 PostgreSQL 服務器進程讀取文件。 您可能需要一個客戶端工具,例如 psql 的 \\copy。

.csv 文件位於客戶端計算機(在 Windows 10 上運行)中,我對服務器中托管的數據庫(在 Linux - Debian 上運行)具有管理員訪問權限。

謝謝你幫助我!

歡迎來到 SO。

COPY .. FROM 'path'假定文件位於服務器中。 如果您希望在不將文件放入數據庫服務器的情況下執行 COPY,您可以使用\\copy或僅使用來自客戶端控制台的psqlSTDIN ,例如在 unix 系統中(您必須找到cat|等效於 Windows):

$ cat file.csv | psql yourdb -c "COPY areas_brasil FROM STDIN DELIMITER '|';"

psql使用\\COPY可以這樣完成:

\COPY areas_brasil FROM '/home/jones/file.csv' DELIMITER '|';

有關更多詳細信息,請參閱此answer

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM