我有一个已经分配了默认值的表。例如,我们可以查看以下内容:
Schema::create('users', function (Blueprint $table) {
$table->increments('id')->unsigned();
$table->integer('active')->default(1);
});
我现在想更改活动字段的默认值。我期待做这样的事情:
if (Schema::hasTable('users')) {
Schema::table('users', function (Blueprint $table) {
if (Schema::hasColumn('users', 'active')) {
$table->integer('active')->default(0);
}
});
}
但它当然告诉我该专栏已经存在。如何在不删除列的情况下简单地更新列 x 的默认值?
原文由 Brendan Van Der Merwe 发布,翻译遵循 CC BY-SA 4.0 许可协议
您可以使用
change()
方法:然后运行
migrate
命令。更新
对于 Laravel 4,使用如下内容:
在
up()
方法而不是Schema::table();
子句中。