簡體   English   中英

pgAdmin4: Importing a CSV

[英]pgAdmin4: Importing a CSV

I am trying to import a CSV using pgAdmin4. I created the table using the query,

CREATE TABLE i210_2017_02_18
(
  PROBE_ID character varying(255),
  SAMPLE_DATE timestamp without time zone,
  LAT numeric,
  LON numeric,
  HEADING integer,
  SPEED integer,
  PROBE_DATA_PROVIDER character varying(255),
  SYSTEM_DATE timestamp without time zone
)

The header and first line of my CSV read is...

PROBE_ID,SAMPLE_DATE,LAT,LON,HEADING,SPEED,PROBE_DATA_PROVIDER,SYSTEM_DATE
841625st,2017-02-18 00:58:19,34.11968,-117.80855,91.0,9.0,FLEET53,2017-02-18 00:58:58

When I try to use the import dialogue, the process fails with Error Code 1:

ERROR:  invalid input syntax for type timestamp: "SAMPLE_DATE"
CONTEXT:  COPY i210_2017_02_18, line 1, column sample_date: "SAMPLE_DATE"

Nothing seems wrong to me - any ideas?

根據您的表結構,此導入將在HEADINGSPEED列中失敗,因為它們的值有小數並且您將它們聲明為INTEGER 刪除小數或將列類型更改為例如NUMERIC

話雖如此,只需從 pgAdmin 嘗試一下(考慮到文件和數據庫位於同一服務器中):

 COPY i210_2017_02_18 FROM '/home/jones/file.csv' CSV HEADER;

如果您正在處理遠程服務器,請在控制台中使用psql嘗試此操作:

 $ cat file.csv | psql yourdb -c "COPY i210_2017_02_18 FROM STDIN CSV HEADER;"

你也可以檢查這個答案

如果您真的想堅持使用我不鼓勵的 pgAdmin 導入工具,只需 select Header選項和正確的Delimiter

在此處輸入圖像描述

您是否設置了 Header-Option = TRUE? 導入設置

那應該工作。

第 1 步:創建表。 您可以使用查詢或儀表板來創建表。

第 2 步:創建 CSV 文件中存在的確切列數。 我建議使用儀表板創建列。

第 3 步:在 pgadmin 中單擊您的 table_name,您將看到一個導入/導出選項。

第四步:提供你的 CSV 文件的路徑,記得選擇分隔符為逗號,

暫無
暫無

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

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