在 Django 中重置資料庫
Vaibhav Vaibhav
2023年1月30日
2021年6月29日
在使用資料庫時,我們經常會遇到必須重置整個資料庫的情況。可能的原因可能是某些資料庫表的新增或刪除、資料庫設計的更改、邏輯和關係問題,或者資料庫中填充了過多無用資料。不管是什麼情況,Django 讓處理這個問題變得非常容易。
此外,Django 為我們提供了一些可以為我們處理這個問題的命令。這些命令之一可以在 Django 中重置資料庫,我們在這裡演示如何使用它。
在 Django 中重置 SQLite3 資料庫
如果你在 Django 專案中使用 SQLite3 資料庫並且必須重置它,請按照以下步驟操作:
-
刪除
db.sqlite3
檔案。如果此檔案包含重要資料,你可能需要為這些資料建立備份。 -
刪除所有 Django 應用程式中的所有
migrations
資料夾。 -
使用
python manage.py makemigrations
命令為所有 Django 應用程式進行遷移。可能存在不為應用程式進行遷移的情況;在這種情況下,將應用程式名稱新增到此命令中,如python manage.py makemigrations MyAppOne MyAppTwo MyAppThree
。 -
最後,使用以下命令遷移遷移:
python manage.py migrate
。
在 Django 中重置整個資料庫
如果我們必須完全重置整個資料庫,我們將使用以下命令:(注意:使用此程式碼後,所有現有的超級使用者也將被刪除。)
python manage.py flush
在 Django 中重置應用程式資料庫表
如果我們必須刪除 Django 應用程式的資料庫表,我們將使用下面的命令。以下程式碼反轉該特定應用程式的所有遷移:
python manage.py migrate MyApp zero
Author: Vaibhav Vaibhav