The table {table} does not exist in the current database.
Prisma P2021 오류를 식별하고 실행 환경의 데이터베이스, 실제 테이블, migration 적용 상태를 확인하는 방법을 설명합니다.
빠른 답변
- 우선 확인할 원인
- Prisma P2021은 오류 메시지의 `{table}` 테이블이 현재 연결된 데이터베이스에 없다는 뜻입니다. 운영 데이터베이스를 초기화하지 말고 실행 환경의 대상 데이터베이스와 실제 테이블, migration 적용 상태를 먼저 확인합니다.
- 먼저 확인할 항목
- 화면 또는 로그의 오류 코드가 `P2021`인지 확인합니다.
- 적용 범위
- 현재 증상과 본문에 적은 관찰 조건이 함께 확인된 경우문맥: 바이브 코딩
- 출처
- Prisma
- 출처 확인일
- 2026-08-29
- 최종 검토
- 2026-08-29
- 수정일
- 2026-08-29
- 정정 이력
- 2026-07-29 이후 기록 없음
- 관련 기술
현재 증상
- 애플리케이션 오류 메시지
먼저 확인할 항목
화면 또는 로그의 오류 코드가 `P2021`인지 확인합니다.
오류 메시지가 `The table {table} does not exist in the current database.` 형식과 일치하는지 확인합니다.
`{table}` 위치에 표시된 테이블 이름을 기록합니다.
오류가 난 실행 환경의 데이터베이스 호스트·이름을 비밀값 없이 확인합니다.
읽기 전용 스키마 조회에서 메시지에 표시된 테이블이 실제로 있는지 확인합니다.
`prisma migrate status`로 로컬 migration 파일과 대상 데이터베이스의 migration 기록을 비교합니다.
피해야 할 조치
주의
- 운영 데이터베이스에서 `prisma migrate reset`, `prisma migrate dev`, `prisma db push`부터 실행하지 않습니다.
- 적용 여부와 SQL 내용을 검토하지 않은 migration을 운영 데이터베이스에 실행하지 않습니다.
- `DATABASE_URL`, 데이터베이스 비밀번호, 운영 데이터 원문을 로그나 전달 자료에 남기지 않습니다.
환경별 원인과 조치
오류 식별
화면 또는 로그에서 오류 코드가 P2021인지 확인합니다.
오류 메시지가 The table {table} does not exist in the current database. 형식과 일치하는지 확인합니다. {table} 자리에는 실제 테이블 이름이 표시됩니다.
두 값이 모두 일치하면 Prisma P2021입니다. 테이블은 있지만 특정 열이 없다는 P2022와 구분해야 합니다. P2022가 표시되면 The column {column} does not exist in the current database. 문서를 확인합니다.
먼저 확인할 대상
- 오류가 난 실행 환경이 개발·Preview·운영 중 어디인지 기록합니다.
- 애플리케이션이 실제로 사용하는 데이터베이스 호스트와 데이터베이스 이름을 확인합니다. 접속 문자열과 비밀번호는 출력하지 않습니다.
- 오류의
{table}에 표시된 이름과 Prisma 모델의@@map또는@map설정을 비교합니다. - 데이터베이스 관리 도구의 읽기 전용 스키마 조회에서 해당 테이블이 실제로 있는지 확인합니다.
Migration 적용 상태 확인
npx prisma migrate status이 명령은 prisma/migrations와 대상 데이터베이스의 _prisma_migrations 기록을 비교합니다. 적용되지 않은 migration이 있으면 테이블 생성 SQL이 포함됐는지 검토합니다. 기록이 일치하는데 테이블이 없다면 잘못된 대상 데이터베이스, 수동 변경 또는 migration history와 실제 스키마의 차이를 확인합니다.
운영 환경에서는 prisma migrate dev나 prisma migrate reset을 실행하지 않습니다. 검토한 pending migration은 백업·복구 절차가 있는 CI/CD의 prisma migrate deploy 단계에서만 적용합니다. migrate deploy는 실제 데이터베이스의 schema drift를 탐지하지 않으므로 실행 뒤 테이블 존재와 오류 재발을 별도로 확인합니다.
수정 뒤 확인
- 같은 배포 환경에서 migration 상태를 다시 기록합니다.
- 읽기 전용 스키마 조회에서 대상 테이블을 확인합니다.
- Prisma Client가 현재 schema에서 생성된 배포본인지 확인합니다.
- 같은 요청을 다시 실행해 P2021이 사라졌는지 확인합니다.
전체 분기와 전달 자료는 Prisma P2021·P2022 오류 확인 가이드에서 확인합니다.
출처
참고 자료
Prisma · 공식 자료 · 확인 범위: P2021의 오류 메시지는 "The table {table} does not exist in the current database."입니다., P2021은 Prisma Client (Query Engine) 오류 코드입니다. · 확인일: 2026-08-29
Prisma · 공식 자료 · 확인 범위: prisma migrate status는 로컬 migration 파일과 대상 데이터베이스의 _prisma_migrations 기록을 비교합니다., 적용되지 않은 migration, 서로 달라진 migration history, 실패한 migration이 있으면 오류 상태를 반환합니다. · 확인일: 2026-08-29
Prisma · 공식 자료 · 확인 범위: migrate dev와 migrate reset은 개발 환경용이며 운영 환경에서 사용하지 않습니다., 운영·테스트 환경의 pending migration은 migrate deploy로 적용합니다., migrate deploy는 실제 데이터베이스 schema drift를 탐지하지 않습니다. · 확인일: 2026-08-29
Prisma · 공식 자료 · 확인 범위: prisma db push나 수동 스키마 변경은 migration history와 실제 스키마의 차이를 만들 수 있습니다. · 확인일: 2026-08-29