【发布时间】:2018-09-23 12:10:24
【问题描述】:
我必须使用 Laravel 迁移从电子邮件列中删除唯一约束。这是我的代码:
class AlterEmailToUsers extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::table('users', function (Blueprint $table) {
$table->string('email')->unique(false)->nullable()->change();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::table('users', function (Blueprint $table) {
$table->string('email')->nullable(false)->unique()->change();
});
}
}
但是当我运行php artisan migrate 时,我收到以下错误:
SQLSTATE[42000]: 语法错误或访问冲突: 1061 Duplicate key name 'users_email_unique' (SQL: alter table `users` add unique `users_email_unique`(`email`))
【问题讨论】:
-
删除索引,
$table->dropUnique('email');从“用户”表中删除唯一索引。参考here
标签: laravel database-migration laravel-5.5 laravel-5.6