我需要使用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 重复键名“users_email_unique”(SQL:alter table `users` add unique `users_email_unique`(`email`))
$table->dropUnique('email');
语句。这将从"users"表中删除一个唯一索引。详细信息请参考此处。 - iamab.in