Rad Blog

Archive

Django - Migration을 통한 database 스키마 관리

2020-05-05 Django xfrnk2
이진석 선생님의 리액트와 함께 장고 시작하기 수강중 정리한 글입니다. Migrations 모델의 변경내역을 “데이터베이스 스키마"로 반영시키는 효율적인 방법 제공 관련 명령: 마이그레이션 파일 생성 > python manage.py makemigrations <앱이름> 지정 데이터베이스에 마이그레이션 적용 > python manage.py migrate <앱이름> 마이그레이션 적용 현황 출력 > python manage.py showmigrations <앱이름> 지정 마이그레이션의 SQL 내역 출력 > python manage.py sqlmigrate <앱이름> <Migration 이름> Migration File 기능 모델의 변경내역을 누적 테이블 생성/삭제, 필드 추가/삭제 등 데이터베이스에 어떤 변화를 가하는 Operation들을 나열 Custom Python/SQL Operation (data migration 등) makemigrations 명령에 의해 모델로부터 자동 생성 모델 참조 없이 빈 Migration File을 만들어서 직접 채워 넣는 것도 가능 주의할 점 같은 Migration 파일이라도 DB 종류에 따라 다른 SQL이 생성됨 모든 데이터 베이스 엔진들이 같은 기능을 제공하지는 않음 적용된 마이그레이션 파일은 절대로 삭제해서는 안됨 의도에 맞게 Migration 파일이 생성되었는지 확인하는 것이 무엇보다 중요 Continue reading