Добавить еще столбец в существующую таблицу, но он не [дублируется]

$ php artisan migrate

In Connection.php line 647:

  SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'users' alre
  ady exists (SQL: create table `users` (`id` int unsigned not null auto_incr
  ement primary key, `name` varchar(191) not null, `email` varchar(191) not n
  ull, `password` varchar(191) not null, `remember_token` varchar(100) null,
  `created_at` timestamp null, `updated_at` timestamp null) default character
   set utf8mb4 collate utf8mb4_unicode_ci)


In Connection.php line 449:

  SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'users' alre
  ady exists

Я пытаюсь добавить больше столбцов в таблицу пользователей, но не могу. В терминале я пишу команду php artisan migrate, но базовая таблица или представление уже существует: 1050 Таблица «пользователи» уже существует. Что я могу сделать сейчас?


person sam sam    schedule 20.05.2018    source источник
comment
не используйте Schema::create используйте Schema::table для добавления дополнительных столбцов   -  person Sakezzz    schedule 20.05.2018


Ответы (2)


Используйте PHP artisan migrate:refresh, он удалит всю таблицу и снова создаст все или используйте Schema::table, чтобы добавить больше столбцов.

person Nishit Manjarawala    schedule 20.05.2018
comment
Я также пытаюсь это сделать, но SQLSTATE[42S01]: базовая таблица или представление уже существует: 1050 Таблица «пользователи» уже существует. - person sam sam; 20.05.2018
comment
зайдите в базу данных и удалите всю таблицу вручную - person Nishit Manjarawala; 21.05.2018
comment
Спасибо. Это работает. - person sam sam; 21.05.2018
comment
тогда проголосуйте пожалуйста - person Nishit Manjarawala; 22.05.2018

Вам нужно ссылаться на таблицу вместо вызова метода создания

Schema::table('users', function (Blueprint $table) {
    $table->string('email');
});

см. документацию Laravel

person Ben V.    schedule 20.05.2018