RDB/Postgresql

[postgreSQL] psql \copy

창문닦이 2020. 6. 17. 01:26

Psql (PostgreSQL의 Command Line Interface)

psql은 pgAdmin로 DB 접속이 어려울 때 terminal로 접근하여 사용하는 명령어 개념이다. 다양한 기능이 존재하는데 매번 \d, \dt만 사용해서 무슨 명령어가 있는지 잘 모른다. (많은 기능을 제공한다는 것만 안다..)

 

테스트를 위해 DB에 대량 더미 데이터를 입력하기 위해서 psql의 \copy 명령어를 사용해 보았다.

 

\copy

psql 명령어 중 \copy를 통해 대량 데이터를 임포트 하여 입력했다. 파일과 테이블 간에 데이터를 전송하는 편리한 방법이지만 한 번에 몇 천 개가 넘는 행을 추가할 때도 INSERT 보다 훨씬 빠르다. 

customer 테이블에 id와 name 컬럼에 홈 디렉터리 하위의 temp 디렉터리에 있는 test.csv를 콤마를 구분자로 하여 DB에 임포트 했다.

\copy customer(id,name) from '~/temp/test.csv' with delimiter ',' csv

 

구문의 syntax는  doc에 자세하게 나와있다. import가 되는 것처럼 to를 사용하면 export 또한 가능하다!!

 

Reference

https://www.postgresql.org/docs/9.2/app-psql.html

https://www.postgresdba.com/bbs/board.php?bo_table=B13&wr_id=4

https://dbrang.tistory.com/749

'RDB > Postgresql' 카테고리의 다른 글

[PostgreSQL] Numeric Types  (0) 2020.01.13
[PostgreSQL] pgadmin 설치  (0) 2019.09.26