IT/Django
convert model to sql query
앤소온
2020. 9. 16. 21:22
model을 잘못 만졌더니 migrate가 안됐다.
예전에는 데이터가 없어 그냥 디비를 다 날리고 다시 makemigrations / migrate를 수행해도 상관없었지만,
이제 데이터가 좀 쌓여서 그럴 순 없었다.
python manage.py migrate --fake zero 이런식으로
해봐도 안됐음
결국 디비에서 해당 table을 드롭하고 다시 create하기로 함.
근데 그냥 create 하려니 sql query를 어떻게 해줘야할지 모르겠다.
구글링하다 결국 찾은게
python manage.py sqlmigrate app_name migration_file_number
python manage.py sqlmigrate test 0001
이런식으로 한다.
그럼
CREATE TABLE "dept_emp_department" ("id" integer NOT NULL PRIMARY KEY AUTOINCREMENT, "dept_name" varchar(1000) NOT NULL, "dept_desc" varchar(1000) NOT NULL);
이런식으로 나온다.
이걸 workbrench나 등등 입력하면 테이블이 정상적으로 생성된다.
admin 페이지에서 확인해보면 나온다.
* 나중에 다시 모를경우 찾아볼 키워드
manage.py sqlmigrate / --fake-inital / --fake / showmigrations /