當我嘗試用分隔符|
導入數據我收到錯誤:錯誤:去年預期的列後額外的數據 - COPY
ERROR: extra data after last expected column
我可以,如果我刪除雙引號或單引號加載數據從下面的示例數據有問題的領域,但我的要求是我需要所有的數據,而不刪除任何。
這是我的複製命令:
COPY public.dimingredient FROM '/Users//Downloads/archive1/test.txt'
DELIMITER '|' NULL AS '' CSV HEADER ESCAPE AS '"' ;
我的表:
public.dimingredient
(
dr_id integer NOT NULL,
dr_loadtime timestamp(6) without time zone NOT NULL,
dr_start timestamp(6) without time zone NOT NULL,
dr_end timestamp(6) without time zone NOT NULL,
dr_current boolean NOT NULL,
casnumber character varying(100) COLLATE pg_catalog."default" NOT NULL,
ingredientname character varying(300) COLLATE pg_catalog."default" NOT NULL,
matchingstrategy character varying(21) COLLATE pg_catalog."default",
percentofconfidence double precision,
disclosurestatus character varying(42) COLLATE pg_catalog."default",
issand character varying(1) COLLATE pg_catalog."default",
sandmeshsize character varying(20) COLLATE pg_catalog."default",
sandquality character varying(20) COLLATE pg_catalog."default",
isresincoated character varying(1) COLLATE pg_catalog."default",
isartificial character varying(1) COLLATE pg_catalog."default",
CONSTRAINT dimingredient_pkey PRIMARY KEY (dr_id)
)
我的數據:
5144|2016-07-01 13:34:25.1001891|1900-01-01 00:00:00.0000000|9999-12-31 23:59:59.9999999|True|93834|"9-octadecenamide,n,n-bis(2-hydroxyethyl)-, (9z)"|"NO CAS MATCH FOUND"||Disclosed|||||
5145|2016-07-01 13:34:25.1001891|1900-01-01 00:00:00.0000000|9999-12-31 23:59:59.9999999|True|93834|"9-octadecenamide,n,n-bis-2(hydroxy-ethyl)-,(z)""|"NO CAS MATCH FOUND"||Disclosed|||||
最後一個分隔符沒有跟隨它?是否應該有一些數據在那裏?你能向我們展示你正在加載的桌子嗎? – Mokadillion
@rajkumars - 你應該編輯你的帖子,而不是粘貼評論中的所有內容。我添加了表DDL以及一些格式,但沒有複製您的數據,因爲它被截斷,我不想歪曲它。不過,如果它不是敏感信息,則應該用文件中的一行或兩行更新您的問題。 – Nicarus
如何定義'public.table'?它有多少列? –