Я пытаюсь интегрировать социальные логины с моим существующим приложением laravel.Я пытаюсь изменить адрес электронной почты и пароль на nullable, но мне также нужно, чтобы адрес электронной почты оставался уникальным.При выполнении моей миграции я получаю сообщение об ошибке для дублированного имени ключа 'users_email_unique'
Laravel 5, уже исправлена проблема с enum, которую я имел для изменения столбца.
Schema::table('users', function (Blueprint $table) {
$table->string('email')->unique()->nullable()->change();
$table->string('password')->nullable()->change();
});
Осветить \ База данных\ QueryException: SQLSTATE [42000]: синтаксическая ошибка или нарушение прав доступа: 1061 Повторяющееся имя ключа 'users_email_unique' (SQL: изменить таблицу users
добавить уникальный users_email_unique
(email
))
Трассировка исключения:
1 Doctrine \ DBAL \ Driver \ PDOException: :( "SQLSTATE [42000]: синтаксическая ошибка или нарушение прав доступа: 1061 Повторяющееся имя ключа 'users_email_unique'")
/ vendor / doctrine / dbal /lib / Doctrine / DBAL / Driver / PDOStatement.php: 119
2 PDOException: :( "SQLSTATE [42000]: синтаксическая ошибка или нарушение прав доступа: 1061 Повторяющееся имя ключа 'users_email_unique'")
/ vendor / doctrine / dbal / lib / Doctrine / DBAL / Driver / PDOStatement.php: 117
Редактировать
Если я удалю Unique () из электронной почты, произойдетон остается уникальным, так как это было ранее установлено в другой миграции?