2016-08-31 98 views
0

我已經創建了許多表使用遷移文件,但我已經通過mysql命令行工具刪除了一些表,然後我發現有關我已經刪除的表的遷移狀態仍然運行,所以怎麼能我修復它?laravel 5.1控制檯遷移命令

當我使用migrate命令時,它總是說什麼都不會遷移,但我的數據庫中沒有表。

我試圖刪除存儲路徑下的所有日誌和東西。

我也嘗試刪除mysql上的遷移表或更改.env文件以使用新數據庫,但兩者都無法工作。誰能幫我?

我使用laravel 5.1。

+0

一旦嘗試使用另一個數據庫。 –

+0

你能提供一些遷移的輸入和輸出嗎?你的問題並不完全清楚。 – threeve

回答

0
`Run migrate:rollback (to undo the last migration) 

If migrate:rollback doesn't work ; do it manually: 
step 1 : delete the migration file 
step 2 : composer dump-autoload (for resetting autoload file) 
step 3 : remove the last entry from migration(to modify your database)` 

雖然你沒有在數據庫中現有的表,你無法遷移的原因是因爲你以前的遷移仍然存在。清除歷史記錄或執行上述步驟

+0

我刪除了所有遷移文件並重新創建它們,然後使用migrate命令創建表格,大量遷移文件.....我只是想知道laravel如何判斷哪些已經運行,哪些不運行?這似乎與數據庫上的遷移表無關。無論如何感謝〜 – Snriud