我正在尝试使用模式构建器向表中添加枚举选项(不丢失当前数据集).
我真正能够找到关于列更改的唯一内容是http://www.flipflops.org/2013/05/25/modify-an-existing-database-column-in-a-laravel-migration/和我相信这是为Laravel3编写的.
即便如此,我尝试使用DB :: query('ALTER TABLE ...'); 命令,但它出错了call_user_func_array()期望参数1是一个有效的回调,类'Illuminate\Database\MySqlConnection'没有方法'查询'.
DB::query("ALTER TABLE users CHANGE COLUMN permissions permissions ENUM('admin', 'user', 'candidate')");
Run Code Online (Sandbox Code Playgroud)
我也试过这样做:
Schema::table('users', function ($table) {
$table->enum('permissions', array('admin', 'user', 'candidate'))->default('user');
});
Run Code Online (Sandbox Code Playgroud)
但它错误地说该列已经存在.
在不丢失该列中的所有数据的情况下,做我正在尝试做的最好的方法是什么?
laravel ×1