【发布时间】:2018-06-18 13:18:45
【问题描述】:
我正在尝试在 Laravel 5.2 版本上运行完美的迁移,但是当我尝试在 laravel 5.5 上运行它时出现错误:
在 Connection.php 第 664 行:
SQLSTATE[42000]:语法错误或访问冲突:1067 无效 'to_date' 的默认值(SQL:创建表
transactions(id
int unsigned not null auto_increment 主键,user_idint 无符号非空,vehicle_idint 无符号非空,from_datet
时间戳不为空,to_date时间戳不为空,flight_numbervarchar(255) 不为空,created_at时间戳为空,updated_atti
mestamp null) 默认字符集 utf8mb4 collate utf8mb4_unicode_ci)在 Connection.php 第 458 行: SQLSTATE [42000]:语法错误或访问冲突:1067 无效 'to_date' 的默认值
这是该表的迁移:
<?php
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class CreateTransactionsTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('transactions', function (Blueprint $table) {
$table->increments('id');
$table->integer('user_id')->unsigned();
$table->foreign('user_id')->references('id')->on('users');
$table->integer('vehicle_id')->unsigned();
$table->foreign('vehicle_id')->references('id')->on('vehicles');
$table->timestamp('from_date');
$table->timestamp('to_date');
$table->string('flight_number');
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::drop('transactions');
}
}
为什么新版本的 laravel 在 5.2 上工作时却不能工作?
【问题讨论】:
-
表车辆需要在transactions表之前迁移....你有这个之前的车辆表迁移吗?
-
是的,我在这个之前有过
标签: mysql laravel migration database-migration