프로그래밍/DB
-
리눅스(ubuntu)에 postgreSQL 설치하기프로그래밍/DB 2018. 11. 24. 19:32
리눅스에 postgreSQL 설치한 과정을 정리해두겠다. apt-get install로 아래와 같이 패키지 설치를 한다. sudo apt-get install postgresql postgresql-contrib # sudo apt-get install postgresql postgresql-contribReading package lists... DoneBuilding dependency treeReading state information... DoneThe following packages were automatically installed and are no longer required: duplicity librsync1 python-lockfileUse 'apt-get autoremove' t..
-
postgresql csv 파일에서 import 하기프로그래밍/DB 2018. 5. 20. 19:04
postgreSQL 사용법 csv 파일에서 테이블로 import 하기 import하기 전에 csv와 같은 format으로 테이블을 생성한다. csv 파일에서 import하는 형식은 아래와 같다. csv header가 있을 경우 csv hearder를 적어준다. delimeter가 탭일경우 ' '으로 적어준다. copy table이름(id,필드1,필드2) from '/home/definition.csv' with delimiter ',' csv header; 처음에 import를 수행했을 떄 아래와 같은 에러들이 나서 하나하나 수정해서 다시 실행하였다. mysql이였으면 warning 메세지로 넘어갔을 것 같은데 확실히 postgreSQL이 좀 더 문법에 엄격한 것 같다. 그나마 에러 메세지가 명쾌한 편이..
-
postgresql - 시퀀스 초기화하기 (nextval 사용 이슈)프로그래밍/DB 2018. 5. 17. 16:50
postgresql 에서 간혹 테이블 구조를 복사하고 새로 데이터를 입력할 경우 id를 mysql의 auto increment에 해당되는 postgres의 nextval 함수를 사용해서 자동 증가 시킬경우 예전 테이블 id의 최대값에 이어서 값이 증가될 때가 있다. 예전 테이블 구조를 복사하면서 이전 테이블의 시퀀스 값이 id 증가에 사용이 되서 발생하는 일이다. 예시 ) 예전 테이블의 시퀀스 아이디 값에서 증가 되고 있을 경우 id nextval 설정 그럴 경우 새로운 테이블의 시퀀스를 아래와 같이 만들어 줘야 함 디비이름# create sequence table2_id_seq;CREATE SEQUENCE 아니면 테이블을 비우고 나서 다시 데이터를 입력할 때도 같은 현상이 일어 날 때가 있다. 이럴 경..