2016-12-30 83 views
0

我需要進行遷移才能將默認值添加到已存在的日期時間字段。這個心不是工作:在Laravel遷移中修改日期時間字段

$table->timestamp('birth_date')->useCurrent()->change(); 

當我嘗試運行遷移返回

SQLSTATE[42S21]: Column already exists: 1060 Duplicate column name 'birth_date' 

的變化()方法的心不是生效

我也無法弄清楚如何使回滾

+0

你更新'birth_date',但在錯誤它說'created_at'。你是否再添加時間戳? –

+0

從另一個地方複製它,但它返回相同的錯誤 – Alan

+0

您確定要調用表方法,而不是調用Schema facade的創建方法嗎? – Henrik

回答

0

沒有useCurrent()方法,useCurrent是列值,所以試試這樣:

$table->timestamp('birth_date')->useCurrent = true; 

此外,原始查詢肯定會工作:

$table->timestamp('birth_date')->default(DB::raw('CURRENT_TIMESTAMP'); 
+0

Alan更新'birth_date',但在錯誤中說'created_at'爲重複的列。你注意到了嗎? –

+0

複製它從另一個地方,但它返回相同的錯誤 – Alan

+0

@Alan請張貼兩個遷移。 –

相關問題