SQL & DB/PostgreSQL

[PostgreSQL] CSV File를 Table에 삽입(Import)하기.

YSY^ 2023. 3. 5. 18:58

CSV파일을 PostgreSQL에 삽입하는 방법은 다음과 같습니다.

먼저 데이터를 다운로드합니다.

sales.csv
0.60MB

 

그리고 데이터를 넣을 데이블을 만들어줍니다.

DROP TABLE IF EXISTS sale_data;
CREATE TABLE sale_data (
  order_id SERIAL,
  date DATE,
  category VARCHAR(50),
  itemcode integer,
  price integer,
  amount integer,
  Primary KEY(order_id)
);

 

데이블을 만들어 준후 CSV파일을 IMPORT하는 방법은 PSQL을 이용하는 것과 PgAdmin 기능을 이용하는 2가지 방법이 있습니다.

 

PSQL로 CSV파일 IMPORT하기

psql을 실행합니다.

실행후 서버, 데이터베이스, 포트, 이름, 암호등을 입력해줍니다. 암호를 제외한 나머지항목들은 enter를 누르면 기본값들이 입력됩니다.

그리고 다음과 같은 코드를 입력해줍니다.

\COPY <테이블명> FROM <파일경로> DELIMITER ',' CSV HEADER;

# 예시
\COPY sales_data FROM 'C:\Users\USER\sales.csv' DELIMITER ',' CSV HEADER;

 

이후 아래와 같이 COPY (데이터의 행의 개수)가 출력되면 파일 import에 성공한 것입니다.

이후 SELECT문을 활용해 출력하면

데이터가 import되었다.

 

PgAdmin에서 CSV파일을 Import하기

Database -> Schemas -> Tables -> 처음에 만든 Table을 선택 한후 Tools -> Import/Export 버튼을 눌러줍니다.

이후 Import로 설정하고 File경로와 포멧을 지정한 후 HEADER을 YES로 설정하고 구분자(Delimiter)를 설정합니다.

이후 OK를 누르면 데이터가 해당 테이블로 Import됩니다.

 

CF) Utility file not found. Please correct the Binary Path in the Preferences dialog 에러가 발생하였을 경우

- 경로를 제대로 설정해주어야 한다.

1. File -> Preference -> Paths -> Binary paths  로 들어간다.

 

2. 경로를 입력해준다. 참고로 설치된 postgreSQL버전에 입력해야한다. 필자의 경우 postgreSQL 버전이 13이라 해당 path에 입력하였다.

path 입력 예시  : C:\Program Files\PostgreSQL{version}\bin

728x90
반응형