2016-07-06 1 views
1

Flask-migrate가있는 플라스크 애플리케이션이 있습니다.Flask Sql-alchemy가 alembic에서 작성한 테이블을 삭제하지 않음

   List of relations 
Schema |  Name  | Type | Owner 
-------+-----------------+-------+---------- 
public | alembic_version | table | postgres 
public | operations  | table | postgres 
public | rule_values  | table | postgres 
public | rules   | table | postgres 
public | shares   | table | postgres 

을하지만 모든 테이블을 삭제할 때 : db upgrade를 실행하면 다음과 같은 테이블을 생성

db = SQLAlchemy(app) 
db.drop_all() 

나는이있어 : 모든 테이블을 삭제하는 솔루션

   List of relations 
Schema |  Name  | Type | Owner 
-------+-----------------+-------+---------- 
public | alembic_version | table | postgres 

거기를 (심지어 alembic_version) ?

+0

증류기는 현재 배포 된 데이터베이스의 버전을 알 필요가있다 : – polku

+0

@polku 빈 데이터베이스에서 시작하겠습니다. –

답변

1

내가 (응용 프로그램 수준과 반대로) 데이터베이스 수준에서 그것을 할이 경우 빈 데이터베이스

에서 시작하려면, 예를 들어, SQLite PostgreSQL에 대한 .db 파일을 삭제하십시오.

이렇게 자주 할 경우 스크립트를 삭제하고 데이터베이스를 다시 만들거나 마이그레이션을 실행할 수 있습니다.

DB 관리 소프트웨어는 응용 프로그램 수준에서 스키마 버전을 추적하기 위해 일부 정보를 유지해야하기 때문에 그것은이 표에 모든 작업이,

db downgrade base 
0

나는 그것을 데이터베이스를 h 있지만 통해 기본 마이그레이션에 다운 그레이드하지 않는 것입니다 답변 - 발견했다. 왜 그걸 버리고 싶니?
+0

이것은 alembic_version 테이블을 삭제하지 않습니다. 그러나 이것만으로도 다시 '업그레이드'할 수 있습니다. – techniao

관련 문제