south 資料庫遷移

2021-07-04 22:28:48 字數 879 閱讀 1582

south是乙個老功能,為什麼這麼說呢,因為在django的1.7版本裡納入了south的資料遷移功能,所以,如果你的專案裡使用的django版本是大於等於1.7的話,你就可以不需要在安裝south包了。

south的作用是當你的專案第一次建立完模型並執行python manage.py syncdb後,資料庫裡的表結構都已經建立完成,專案又上線執行一段時間,這時討厭的產品經理又來改需求了,而且還涉及的模型的修改,那麼就用到這個功能了。

安裝和配置就略過了,直接使用如下:

如果第一次使用:

python

manage.py

schemamigration--

initial

python manage.py syncdb
初始化資料表

以後每次對models更改後,可以執行以下兩條命令同步到資料庫

python

manage.py

schemamigration--

auto

檢測對models的更改,並把更改的字段資訊儲存到migrations的子目錄裡的新增版本檔案裡。

將更改反應到資料庫(如果出現表已存在的錯誤,後面加 –fake)

常遇到的問題:

多人開發並操作乙個資料庫的時候,會出現這個問題

! these migrations are in the database but not on disk:

解決這個問題有兩個方法:

1.到對應的資料庫裡刪掉問題中列出來的遷移版本。

2.跳過這些有問題的遷移版本。

未完待續~~

資料庫遷移

這期專案,需要將另外乙個系統a與現有系統b整合,由於時間比較緊,直接採用遷移oracle資料庫物件的方式,發現之前評估的方案不是特別完善,首先 1 a資料庫為gbk編碼,b資料庫是utf 8編碼格式,a資料遷移需要進行中文字段擴容 至少1.5倍 2 a資料庫需要做效能評估,歷史資料遷移涉的方式,兼顧...

資料庫遷移

資料庫遷移 在開發過程中,需要修改資料庫模型,而且還要在修改之後更新資料庫。最直接的方式就是刪除舊表,但這樣會丟失資料。更好的解決辦法是使用資料庫遷移框架,它可以追蹤資料庫模式的變化,然後把變動應用到資料庫中。在flask中可以使用flask migrate擴充套件,來實現資料遷移。並且整合到fla...

資料庫遷移

1,增加遷移 如果你已經建好了表,你想在這個表中新增屬性,但是有不能回滾,這就需要單獨遷移了。1 rails generate migration addpartnumbertoproducts 這個命令生成乙個空的遷移,但名字已經起好了 class addpartnumbertoproducts ...