修改字段前需要安装的依赖
在你修改或者丢弃某些字段前,你需要运行 composer require doctrine/dbal
Schema::table('users', function (Blueprint $table) {
$table->string('name', 100)->change();
});
Schema::table('contacts', function (Blueprint $table) {
$table->string('deleted_at')->nullable()->change();
});
Schema::table('contacts', function (Blueprint $table) {
$table->renameColumn('promoted', 'is_promoted');
});
Schema::table('contacts', function (Blueprint $table) {
$table->dropColumn('votes');
});
在SQLite中一次修改多个字段
如果你使用SQLite想通过一条迁移闭包来修改或者丢弃多个字段,那么你会收到报错
在第12章中,我建议您将SQLite用于测试数据库,即使您使用的是更传统的数据库,也可将此视为测试的限制
然而你不需要为每个更改创建迁移,你只需要在up内调用多次Schema::table()
public function up() {
Schema::table('contacts', function (Blueprint $table) {
$table->dropColumn('is_promoted');
});
Schema::table('contacts', function (Blueprint $table) {
$table->dropColumn('alternate_email');
});
}