Laravel 5迁移更改现有列的长度

San*_*rần 21 laravel

它不起作用,我搜索了很多方法,如何在laravel 5中更改值的长度

public function up()
{
    Schema::table('articles', function (Blueprint $table) {
        $table->string('name',50)->change();
    });
}
Run Code Online (Sandbox Code Playgroud)

谢谢大家阅读!

Ale*_*nin 41

关于文档,您的示例应该工作:

Schema::table('users', function ($table) {
    $table->string('name', 50)->change();
});
Run Code Online (Sandbox Code Playgroud)

只需运行php artisan migrate命令即可执行它.


vic*_*orf 11

至少在 Laravel 5.6 中,如果它需要 Doctrine DBAL 并且您出于任何原因不想现在安装它,您可以尝试以下操作:

<?php

// ...

Schema::table('users', function ($table) {
    DB::statement('ALTER TABLE users MODIFY COLUMN name VARCHAR(50)');
});
Run Code Online (Sandbox Code Playgroud)