일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- GraphQL
- IAC
- Terraform
- svelte
- react
- JavaScript
- docker-network
- :=
- 인라인핸들러
- cron
- go
- GIT
- smui
- 도커컨테이너
- golang
- PostgreSQL
- nestjs
- 도커
- onDestory
- mock
- githook
- Svelte LifeCycle
- TypeScript
- reactjs
- ...$$restProps
- testing
- docker
- bitwiseNot
- 번역
- apiTest
Archives
- Today
- Total
Den`s blog
(PostgreSQL) pq: duplicate key value violates unique constraint `~_pkey` 본문
Database
(PostgreSQL) pq: duplicate key value violates unique constraint `~_pkey`
shinYeongHyeon 2021. 2. 21. 20:47반응형
PostgreSQL 데이터베이스를 자주 활용하는 편이 아니다보니, 여러 기본적인 에러들에 자꾸 빠진다,
이번에는 아래의 에러를 확인해 보자
duplicate key value violates unique constraint '~\_pkey'
뭐 딱보니까 Primary Key 가 문제가 되는 거 같은데, Auto Increment 를 설정안해놓았나 싶었다.
그런데 Postico 로 확인 해보니, Sequence 로 설정해두면 자동으로 A.I. 설정이 될텐데 왜 그러지 싶어 확인해보니, PostgreSQL 에서는 Sequence Object 로 순번을 관리하는데, 이것을 프로그램으로 넣었다가, 데이터베이스로 직접 넣었다던가 하면 실제 테이블의 값과 Sequecne Object 의 값이 다르게 되어 이런문제가 생긴다고 한다. 이렇게 될 경우 초기의 테스트/개발 시엔 그냥 깔-끔하게 테이블 내용 다 삭제하는게 편하고 그렇게 하지 못하는 경우에는
// 스크롤 & 복사편의성
SELECT setval('table_id_seq', (SELECT MAX(id) FROM yourtable));
// 스크롤 & 복사편의성
위와 같이 yourtable 에 문제되는 테이블을 적어주면 된다고 한다!
728x90
반응형
'Database' 카테고리의 다른 글
(PostgreSQL) Postgres The data directory contains an old postmaster.pid file error (0) | 2021.02.18 |
---|---|
Null에 대한 고찰 (1) | 2021.01.30 |
Comments