웹 개발
데이터베이스 관계 설정이 꼬였을 때
Prisma에서 관계를 정의했는데 실제 쿼리에서 데이터가 제대로 연결되지 않는다. 관계 설정과 마이그레이션을 확인하는 방법을 정리했다.
데이터베이스 관계는 복잡해 보이지만, 체계적으로 확인하면 문제를 빨리 찾을 수 있다.
문제의 경계 정하기
관계 문제가 터졌을 때는 먼저 어느 범위가 영향을 받는지 파악한다.
- 특정 관계만 깨지나: 아니면 모든 관계 쿼리가 깨지나
- 마이그레이션 후부터 생겼나: 아니면 처음부터 문제였나
- 스키마는 맞는가: Prisma schema에서 관계를 제대로 정의했나
로컬과 배포 환경 비교
로컬과 배포의 스키마가 다를 수 있다.
npx prisma validate
npx prisma migrate status
마이그레이션 확인
관계 설정 후 마이그레이션이 제대로 적용되지 않았을 수 있다.
- 현재 스키마와 DB의 상태가 일치하는지 확인한다
- 누락된 마이그레이션이 있는지 본다
- 테스트 쿼리로 관계가 제대로 작동하는지 확인한다
다음을 위해 기록하기
한 번에 여러 설정을 바꾸지 말고, 하나씩 바꾼 후 결과를 기록해 두자. 다음에 비슷한 문제가 나오면 훨씬 빨리 처리할 수 있다.