개발일지/# 에러일지

[Error 일지] django.db.utils.OperationalError: (1050, "Table '' already exists")

lution88 2022. 2. 5. 22:52

장고로 프로젝트를 진행 중 발생한 에러이다.

django.db.utils.OperationalError: (1050, "Table 'like_games' already exists")

- 문제 -

필요한 코드를 작성하고 migrate를 하려고 하니 에러가 발생했다.

 

$ python manage.py makemigrations 를 하고

$ python manage.py migrate 를 하면

 

데이터 베이스에 이미 테이블이 존재한다고  위와 같은 "Table 'like_games' already exists" 에러를 발생한다.

연결된 DB에 있는 Table도 지워보고 했는데 도저히 먹히지를 않았다.

 

이 문제를 해결하기 위해 꽤나 시간을 잡아먹었다.

 

- 해결 - 

해결 방법은 의외로 간단했다.

$ python manage.py migrate --fake

위 코드를 입력해주니 migrate가 진행되었다.

 

fake를 사용한 이유는 데이터베이스 테이블이 이미 존재하기 때문에 초기 마이그레이션 파일을 적용할 수 없었다.

그래서 마치 마이그레이션을 한 것처럼 아래와 같이 명령하여 fake migrate를 한 것이다.

결과적으론 db사용이 다시 가능해 졌다.