FuelPHP Migration小研究

Posted by ayuayu on 2014/09/02


簡單來說呢,migrate是一個架構改變機制
up和down設定好以後,up通常就是升級版本以後資料庫應該要怎樣
也就是我想要在新版的A資料表的B欄位名稱應該改成C
那up就是A.B 改成A.C  down就是A.C改成A.B

由於是可逆的,因此up和down必須完全是相反操作,這樣就能符合結構的版本控制
如果中間有發現什麼問題,也可以直接退版本來解決以後,再重新進到比較新的版本當中

官網沒有說很清楚,其實那個檔案XXX_filename的XXX就是版本名稱
因此如果打入php oil r migrate --version=23
就是從目前執行的版本一直執行up裡面的函式直到23號的檔案
然後如果又要退到15號,打入php oil r migrate --version=15,他就是不斷執行down的函式直到版本是15

因此這裡的架構的PHP SQL Code可逆性有嚴格要求(尤其做什麼rename 然後還有搬東西或修改架構而非創建之類的,就要特別注意)

最後,這些東西都跟資料無關,注意migration只針對資料庫架構進行調整,是不管裡面資料內容的

所以你可以看到up 裡面create一堆,down 就直接drop了(或相反)
中間不負責救資料,因此需要留意



沒有留言:

張貼留言