※ 本文為 dinos 轉寄自 ptt.cc 更新時間: 2014-10-20 14:34:14
看板
作者 標題 Re: [請益] 誤刪了DB裡的table,如何重新migrate?
時間 Mon Oct 20 13:41:02 2014
※ 引述《youneverknow (睡覺一直想)》之銘言:
: 小弟測試的時候手殘直接drop了DB裡的所有table
: 重新執行php artisan migrate:refresh
: 會報出找不到table去drop的錯
: 因而無法執行
: 請問這種狀況要怎麼解決.....
: 謝謝
#我用laravel 4.1
首先,如果你說的是真的: 手殘直接drop了DB裡的所有table
你migrate:refresh報的錯誤不會是找不到table drop
而是沒有migrations 這個 table
(
migrations table裡面放的是framwork migrate的紀錄
framework會依據裡面的內容來檢查現migrate到哪,而去執行相關動作
)
假設migrations table還在,而其他table都不見
你需要做的事情是把migrations清空 or 也把他砍了
直接run migrate 就好,不要refresh
refresh 代表執行兩個動作: rollback and migrate
framework發現migrations裡有你migrate的紀錄,想要rollback
而migrate file 裡的 down,有drop table的動作,但沒table讓它drop
才會出現你說的錯誤訊息
小注意
laravel refresh會把所有的migrate file都run 成 batch 1
為何不幫忙紀錄batch呢? 這我就不曉得了...
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.32.8.201
※ 文章網址: http://www.ptt.cc/bbs/PHP/M.1413783665.A.FB4.html
--
※ 看板: dinos 文章推薦值: 0 目前人氣: 0 累積人氣: 174
作者 meteorsok 的最新發文:
- #我用laravel 4.1 首先,如果你說的是真的: 手殘直接drop了DB裡的所有table 你migrate:refresh報的錯誤不會是找不到table drop 而是沒有migrations …
- 說到紅包,讓我想起當年... 當時在關西營區三營當教育班長(賽缺) 運氣很好的在過年留守(?) 晚上站2200 2400的安官 站到差不多2330,正想說好爽,在發呆一下就可以睡覺 結果下一哨出現了( …5F 3推
瞎
guest
回列表(←)
分享