我使用的是 Laravel 5.3
我的迁移文件如下:
<?php
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class CreateUsersTable extends Migration
{
public function up()
{
Schema::create('users', function (Blueprint $table) {
$table->increments('id');
$table->string('name');
$table->string('api_token')->nullable();
$table->string('email',100)->unique();
$table->string('password')->nullable();
$table->string('avatar',100)->nullable();
$table->string('full_name',100)->nullable();
$table->date('birth_date')->nullable();
$table->smallInteger('gender')->nullable();
$table->timestamps();
$table->softDeletes();
});
}
public function down()
{
DB::statement('SET FOREIGN_KEY_CHECKS = 0');
Schema::dropIfExists('users');
DB::statement('SET FOREIGN_KEY_CHECKS = 1');
}
}
我想添加一个像这样的新字段:
$table->string('mobile_number',20)->nullable();
但我不想在模式上添加它。 我想使用alter table 在我的演示服务器和生产服务器上设置了自动迁移
因此,如果我使用alter table,则会自动迁移。 因此,在代码合并到开发或主分支时,在数据库中的表将自动添加mobile_number字段
如果我在模式上添加,则不会自动迁移
如何使用alter table添加字段?