[PostgreSQL] 난 너를 너무 쉽게 봤어 그래서 짜증이났지

리미·2020년 7월 2일
1

PostgreSQL

목록 보기
1/2

신경쓸게 넘모 많은 예민한 PostgreSQL

구글신께서 Django에 PostgreSQL이 상성이 맞다고하길래 이번 프로젝트에 Django에 DB를 PostgreSQL를 적용해봤다.
그런데 MySQL쓸때보다 손이 더 많이가자나? 😅
그래도 MySQL보다 퍼포먼스가 더 낫지않을가하고 위로해본다
내가 지금까지 겪은 것들을 나열해 보겠다.

1. db에 data를 강제로 밀어넣고 django로 insert시 pk가 자동으로 카운트되지않는다.

pk를 Auto Count할 경우의 문제이다.
DB에 data를 밀어넣고 해당 테이블에 데이터를 새로 생성하려고하면 아래와 같은 에러가 뜨게된다.
IntegrityError:duplicate key value violates unique constraint
pk 1번~n번까지의 데이터를 집어넣었다면 Django선 n+1번부터 insert가 되어야하는데 무조건 1번부터 잡아주니까 문제가 되는것.
MySQL만 썼던 나는 이 에러를 보고 🤯

결국엔 Django Terminal에서 아래와 같이 쳐준다

python manage.py sqlsequencereset ~~App name~~ | python manage.py dbshell 

출처 : https://stackoverflow.com/a/37183998
https://stackoverflow.com/a/545008 (다른명령어)

2. csv import를 할때 boolean Type이 먹히지않는다.

이건 아직도 알아보고 있긴한데,
1)Table을 생성한 상태에서 import시키는거랑 2)CSV로 import시켜서 생성한 Table이랑 Data Type이 다를거라는 건 모두가 아는 사실일 것이다.
여기서 생성된 2)의 Table의 data를 복사해서 1)의 Table에 copy&paste를 하게되면 2)의 Table Data Type까지 복사가 된다는 것 같은데 내가 직접 넣은게 아니라 다시 알아봐야될 것 같고 🧐

csv import에서 가끔 boolean 먹히질않는데,
"true/false", "TRUE/FALSE", "t/f"를 써야 boolean으로 인식한다는것 같다

출처 : https://stackoverflow.com/q/13266799

발견할때마다 계속 추가/수정될 예정인 글입니다.

profile
Python이 하고싶은데 자꾸 Flutter 시켜서 빡쳐서 만든 블로그

0개의 댓글