![透過 csv 將大量虛擬資料匯入 pgAdmin 4 - 失敗(退出代碼:1)](https://rvso.com/image/1645719/%E9%80%8F%E9%81%8E%20csv%20%E5%B0%87%E5%A4%A7%E9%87%8F%E8%99%9B%E6%93%AC%E8%B3%87%E6%96%99%E5%8C%AF%E5%85%A5%20pg%E2%80%8B%E2%80%8BAdmin%204%20-%20%E5%A4%B1%E6%95%97%EF%BC%88%E9%80%80%E5%87%BA%E4%BB%A3%E7%A2%BC%EF%BC%9A1%EF%BC%89.png)
我正在嘗試將大量虛擬資料上傳到我的 pgadmin 表中。我可以對較小的表格使用 csv,但是我有一個更大的資料電子表格,其中包含描述(像 {'` 這樣的標點符號,這可能會導致上傳問題)。
我收到以下錯誤訊息,但我無法弄清楚它的含義。我已經瀏覽了大量文字以刪除我認為可能導致此問題的任何標記,但我仍然遇到相同的錯誤。
由於導入工具似乎有很多錯誤,是否有更好的方法來做到這一點?
"C:\\Program Files (x86)\\pgAdmin 4\\v4\\runtime\\psql.exe" --command " "\\copy public.\"marineLifes\" (\"marineLifeID\", \"marineTypeID\", \"marineName\", \"marineDescription\") FROM 'C:/Users/JAMESG~1/Desktop/MARINE~1.CSV' CSV QUOTE '\"' ESCAPE '''';""
答案1
如果你有一個正確的 CSV 文件,標題行會匹配現有表中的字段,您可以透過以下方式匯入:
在文字編輯器中開啟 CSV 文件
將此行新增為文件中的第一行,位於標題上方:
COPY public."marineLifes" FROM STDIN WITH (FORMAT CSV, HEADER ON)
- 新增此行(僅包含 COPY 終止符)作為最後一行,緊接在最後一行之後:
\.
將文件另存為
tmp.sql
.使用以下命令運行檔案
psql
:
C:\...\psql.exe -f C:\...\tmp.sql