287쪽 데이터베이스 초기화하기 오류가 나옵니다.

flask db upgrade 명령어를 사용했는데, 계속해서 이런 오류가 나옵니다.
(...중략...)
e 376, in drop_table
self.exec(schema.DropTable(table))
File "/home/ubuntu/venvs/myproject/lib/python3.8/site-packages/alembic/ddl/impl.py", lin
e 197, in _exec
return conn.execute(construct, multiparams)
File "/home/ubuntu/venvs/myproject/lib/python3.8/site-packages/sqlalchemy/engine/base.py
", line 1289, in execute
return meth(self, multiparams, params, _EMPTY_EXECUTION_OPTS)
File "/home/ubuntu/venvs/myproject/lib/python3.8/site-packages/sqlalchemy/sql/ddl.py", l
ine 77, in _execute_on_connection
return connection._execute_ddl(
File "/home/ubuntu/venvs/myproject/lib/python3.8/site-packages/sqlalchemy/engine/base.py
", line 1381, in _execute_ddl
ret = self._execute_context(
File "/home/ubuntu/venvs/myproject/lib/python3.8/site-packages/sqlalchemy/engine/base.py
", line 1845, in _execute_context
self._handle_dbapi_exception(
File "/home/ubuntu/venvs/myproject/lib/python3.8/site-packages/sqlalchemy/engine/base.py
", line 2026, in _handle_dbapi_exception
util.raise
(
File "/home/ubuntu/venvs/myproject/lib/python3.8/site-packages/sqlalchemy/util/compat.py
", line 207, in raise_
raise exception
File "/home/ubuntu/venvs/myproject/lib/python3.8/site-packages/sqlalchemy/engine/base.py
", line 1802, in _execute_context
self.dialect.do_execute(
File "/home/ubuntu/venvs/myproject/lib/python3.8/site-packages/sqlalchemy/engine/default
.py", line 719, in do_execute
cursor.execute(statement, parameters)
sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) no such table: _alembic_tmp_qu
estion
[SQL:
DROP TABLE _alembic_tmp_question]
(Background on this error at: https://sqlalche.me/e/14/e3q8)

저번에 데이터베이스 관련 실습할 때에도 가끔 굵게 표시된 오류가 자주 나오는데, 원인이 무엇이고 어떻게 하면 좋을까요?

jckim 654

2021년 11월 23일 2:39 오후

목록으로
1개의 답변이 있습니다. 1 / 1 Page

테이블에 저장된 데이터가 꼭 필요한 데이터가 아니라면 다음과 같이 데이터를 초기화 할 수 있습니다.
(아래 작업을 진행하면 데이터가 모두 사라지니 주의해 주세요)

  1. pybo.db 파일 삭제
  2. migrations 디렉터리 삭제
  3. flask db init 실행
  4. flask db migrate 실행
  5. flask db upgrade 실행

위와 같이 진행하면 데이터 및 테이블들이 초기화 될겁니다.

박응용

M 2021년 11월 23일 3:04 오후

혹시 AWS에서 만든 우분투 환경내에서 저 순서대로 하면되나요? 파일이나 디렉터리 삭제는 rm명령어 쓰면되나요? - jckim님, 2021년 11월 23일 8:24 오후 추천 , 대댓글
@jckim님 다음처럼 하시면 됩니다. rm pybo.db rm -rf migrations - 박응용님, 2021년 11월 24일 12:12 오전 추천 , 대댓글
@박응용님 알려주셔서 감사합니다. 다시 한번 더 해볼게요. - jckim님, 2021년 11월 24일 7:51 오전 추천 , 대댓글