ошибка миграции ремесленника "Доктрина класса"\\DBAL\\Драйвер\\PDOMySql\\Драйвер "не найден",

При попытке запустить миграцию я получаю ошибку Artisan миграция

ошибка: Class 'Doctrine\\DBAL\\Driver\\PDOMySql\\Driver' not found

Я прочитал вопросы здесь и также вижу примечания, чтобы добавить:

doctrine/dbal": "~2.3 в разделе с требованиями composer.json

Отчет об ошибках Github

Однако я не понимаю, что случилось. Я создал таблицу несколько дней назад без проблем.

Я не могу понять, что делать после добавления этой зависимости в composer.son.

Я не хочу случайно обновлять другие пакеты.

Ответы

Ответ 1

doctrine/dbal зависимость должна быть добавлена к вашему composer.json

composer require doctrine/dbal

Для получения дополнительной информации проверьте laravel #Modifying Columns

Ответ 2

Это сообщение появляется, если вы хотите редактировать столбец в базе данных.

Чтобы решить это, сделайте:

  • добавить doctrine/dbal зависимость в composer.json
  • и использовать composer require doctrine/dbal команда composer require doctrine/dbal

Ответ 3

Бежать

composer update

Он установит ваши недостающие пакеты, такие как PDOMySql.

Или же

Удалить папку поставщика и запустить

composer install

Ответ 4

Можете ли вы поделиться своим текущим композитором.json?

После обновления composer.json вы можете выполнить установку композитора. Он не будет обновлять существующие пакеты (из-за сгенерированного composer.lock), он будет устанавливать только новые.

Что изменилось с момента последней миграции?

Это тот же проект в том же каталоге? Если да, то он должен быть там.

Ответ 5

Хорошо спасибо за помощь. Глупо, я читал, что для выполнения некоторых других операций вызывается отсутствующий драйвер, и на днях я попытался выполнить миграцию, чтобы изменить имя столбца, и что я полностью забыл, так это то, что последующие прогоны миграции пытаются по-прежнему запускать этот плохой один. После того, как я вспомнил и удалил миграцию имени столбца обновления, моя миграция таблицы добавления прошла нормально. С проектом в течение нескольких недель, никаких обновлений пакета для меня!

Ответ 6

Я видел следующее: Чтобы переименовать столбец, вы можете использовать метод renameColumn в построителе Схемы. Прежде чем переименовывать столбец, обязательно добавьте зависимость doctrine/dbal к вашему файлу composer.json:

возможно, это работает.