2014-11-28 2 views
1

"우편 번호", "2010 인구", "Land-Sq-Mi"및 "Sq Mile 당 밀도"라는 열 이름을 가진 CSV 파일을 테스트 테이블로 가져 오려고합니다 이 이름은 derp라는 이름입니다. 그래서 처음에 drop 문을 사용했기 때문에 행을 복제하지 않고 각 반복에서 깨끗하게 시작할 수 있습니다. 다음과 같이PostgreSQL은 CSV 가져 오기시 헤더를 공백으로 남김

코드는 다음과 같습니다

DROP TABLE derp; 
CREATE TABLE public.derp("Zip Code" varchar, "2010 Population" integer, "Land-Sq-Mi" numeric, "Density Per Sq Mile" numeric); 
COPY derp("Zip Code", "2010 Population", "Land-Sq-Mi", "Density Per Sq Mile") 
FROM '/home/michael/PycharmProjects/cmsDataProject/Zipcode-ZCTA-Population-Density-And-Area-Unsorted.csv' 
DELIMITER',' 
CSV HEADER; 

이 실제 데이터를 가져 오는 좋은 일을하지만, 그것은 pgadmin III 데이터보기에서 빈 열 머리글을 떠난다. Nano의 소스 파일을 살펴 보았습니다. 헤더가 있습니다. 헤더가 없다면 쿼리를 가져올 때 열과 관련이 없다는 구문 오류가 발생했습니다.

내가 뭘 잘못하고 있는지에 대한 아이디어가 있습니까?

편집 : pgadmin III 데이터보기에서 머리글 이름을 표시하고 가능하면 열을 가져 오지 않고 표시하지 않더라도 열의 이름이 실제로 지정되었는지 확인하는 것이 좋습니다. 다시 말하면, 헤더 뒤의 모든 행은 그대로이며 뷰에는 헤더 행 만 비어 있습니다.

편집 2 : 내가 CREATE TABLE public.derp(); 일 때 수동으로 열을 추가하면 데이터보기에 올바르게 표시됩니다. 여러 줄 쿼리 문에 대한 문제로 파손이 발생했습니다.

+0

어떤 결과가 있습니까? 어떤 결과를 원하니? – newman

+0

@newman 소식은 내가 원하는 것과 내가 갖고있는 것을 반영하여 업데이트되었습니다. – khtad

+0

pgadmin은 테이블 생성시 사용하는 열 이름으로 열 머리글을 표시합니다. COPY에서 CSV HEADER는 첫 번째 행에 데이터를 삽입하여 열을 수정하기위한 열의 이름을 포함한다는 것을 의미합니다. – newman

답변

2

그래서 pgadmin은 열 이름을 표시하지 않지만 데이터를 표시하고 있습니까?

pgadmin에서 테이블을 연 다음 테이블을 변경했지만 테이블 창을 열어두면 열 이름이 손실 된 것 같습니다.

테이블을 창을 닫습니다. pgadmin 트리보기에서 테이블 아이콘을 클릭하고 테이블을 새로 고친 다음 테이블 창을 다시여십시오.

+0

이것은 효과가 있습니다. 고마워요, 선생님. – khtad

관련 문제