Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 23.04.2018 09:23:06

Ошибка при создание миграции

Не могу понять почему есть ошибка при создание миграции

GaneMax@GANEMAX D:\OSPanel\domains\catalog.loc
$ php artisan migrate

   Illuminate\Database\QueryException  : SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'users' already exists (SQL: create table `users` (`id` int unsigned not null auto_increment primary key, `name` varchar(255) not null, `email` varchar(255) not null, `password` varchar(255) not null, `remember_token` varchar(100) null, `created_at` timestamp null, `updated_at` timestamp null) default character set utf8mb4 collate utf8mb4_unicode_ci)

  at D:\OSPanel\domains\catalog.loc\vendor\laravel\framework\src\Illuminate\Database\Connection.php:664
    660|         // If an exception occurs when attempting to run a query, we'll format the error
    661|         // message to include the bindings with SQL, which will make this exception a
    662|         // lot more helpful to the developer instead of just the database's errors.
    663|         catch (Exception $e) {
  > 664|             throw new QueryException(
    665|                 $query, $this->prepareBindings($bindings), $e
    666|             );
    667|         }
    668|

  Exception trace:

  1   PDOException::("SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'users' already exists")
      D:\OSPanel\domains\catalog.loc\vendor\laravel\framework\src\Illuminate\Database\Connection.php:458

  2   PDOStatement::execute()
      D:\OSPanel\domains\catalog.loc\vendor\laravel\framework\src\Illuminate\Database\Connection.php:458

  Please use the argument -v to see more details.

<?php

use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;

class CreateCategoriesTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::create('categories', function (Blueprint $table) {
            $table->increments('id');
            $table->timestamps();
            $table->string('name', 250);
            $table->string('alias',250)->unique();
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::dropIfExists('categories');
    }
}

Не в сети

#2 23.04.2018 09:56:53

Re: Ошибка при создание миграции

Подскажите как устранить ?

Не в сети

#3 23.04.2018 10:32:58

Re: Ошибка при создание миграции

Он Вам пишет, что таблица users уже существует.
Т.е. при запуске artisan migration, скрипт выполняет все миграции, которые ранее не были выполнены.
Возможно, таблицу users Вы создавали вручную, а потом создали миграцию.
Если Вам эту таблицу users не жалко, удалите ее. Или переименуйте, выполните миграцию, а потом переименуйте обратно ))

Не в сети

#4 23.04.2018 10:55:34

Re: Ошибка при создание миграции

Я все таблице с БД удалил, так там может быть users таблица

Не в сети

#5 23.04.2018 10:58:12

Re: Ошибка при создание миграции

значит не в той базе удалили. или не в ту базу пишет миграция.
Проверьте в файле .env
DB_DATABASE="Та база"?

Не в сети

#6 23.04.2018 11:03:00

Re: Ошибка при создание миграции

значит не в той базе удалили. или не в ту базу пишет миграция. Проверьте в файле .envDB_DATABASE="Та база"?

да DB_DATABASE=catalog
я все с БД удалил, выполняю миграцию создаеться таблица users migrtion и все

Не в сети

#7 23.04.2018 11:05:29

Re: Ошибка при создание миграции

Может кодировка не та

Не в сети

#8 23.04.2018 11:06:20

Re: Ошибка при создание миграции

Создалось 2 таблицы: users и  migration, да? Хорошо.
Файл миграции для таблицы categories в папке database/migrations ?

Не в сети

#9 23.04.2018 11:13:41

Re: Ошибка при создание миграции

да

Не в сети

#10 23.04.2018 11:16:19

Re: Ошибка при создание миграции

1. Сейчас команда artisan migrate ошибок не выдает?
2. Что выводит команда artisan migrate:status ?
3. Имя файла миграции для категорий?
() Вы запускаете artisan в папке того проекта? )) На всякий случай

Не в сети

#11 23.04.2018 11:22:07

Re: Ошибка при создание миграции

$ php artisan migrate:status
+------+------------------------------------------------+-------+
| Ran? | Migration                                      | Batch |
+------+------------------------------------------------+-------+
| N    | 2014_10_12_000000_create_users_table           |       |
| N    | 2014_10_12_100000_create_password_resets_table |       |
| N    | 2018_04_23_062130_create_categories_table      |       |
+------+------------------------------------------------+-------+



======================================
$ php artisan migrate

   Illuminate\Database\QueryException  : SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'users' already exists (SQL: create table `users` (`id` int unsigned not null auto_increment primary key, `name` varchar(255) not null, `email` varchar(255) not null, `password` varchar(255) not null, `remember_token` varchar(100) null, `created_at` timestamp null, `updated_at` timestamp null) default character set utf8mb4 collate utf8mb4_unicode_ci)

  at D:\OSPanel\domains\catalog.loc\vendor\laravel\framework\src\Illuminate\Database\Connection.php:664
    660|         // If an exception occurs when attempting to run a query, we'll format the error
    661|         // message to include the bindings with SQL, which will make this exception a
    662|         // lot more helpful to the developer instead of just the database's errors.
    663|         catch (Exception $e) {
  > 664|             throw new QueryException(
    665|                 $query, $this->prepareBindings($bindings), $e
    666|             );
    667|         }
    668|

  Exception trace:

  1   PDOException::("SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'users' already exists")
      D:\OSPanel\domains\catalog.loc\vendor\laravel\framework\src\Illuminate\Database\Connection.php:458

  2   PDOStatement::execute()
      D:\OSPanel\domains\catalog.loc\vendor\laravel\framework\src\Illuminate\Database\Connection.php:458

  Please use the argument -v to see more details.

GaneMax@GANEMAX D:\OSPanel\domains\catalog.loc

Имя файла миграции для категорий?
2018_04_23_062130_create_categories_table
Создавал файл миграции так
$ php artisan make:migration create_categories_table --create=categories

Не в сети

#12 23.04.2018 11:30:01

Re: Ошибка при создание миграции

Что-то не сходится. В artisan migrate:status в колонке Run стоит N для всех миграций.
Т.е. миграции не выполнились, а в сообщении говорится, что таблица есть.

1. Попробуйте переместить куда-то на время файл миграции категории. и еще раз запустите artisan migrate.
Он должен вывести "Nothing to migrate."

2. Перенесите миграцию user, если она ему не нравится. Но это непонятный путь.

Не в сети

#13 23.04.2018 11:34:08

Re: Ошибка при создание миграции

как исправить проблему ?

Не в сети

#14 23.04.2018 11:39:15

Re: Ошибка при создание миграции

Удалил я категорий миграцию и все таблице
$ php artisan migrate
Migration table created successfully.

   Illuminate\Database\QueryException  : SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes (SQL: alter table `users` add unique `users_email_unique`(`email`))

  at D:\OSPanel\domains\catalog.loc\vendor\laravel\framework\src\Illuminate\Database\Connection.php:664
    660|         // If an exception occurs when attempting to run a query, we'll format the error
    661|         // message to include the bindings with SQL, which will make this exception a
    662|         // lot more helpful to the developer instead of just the database's errors.
    663|         catch (Exception $e) {
  > 664|             throw new QueryException(
    665|                 $query, $this->prepareBindings($bindings), $e
    666|             );
    667|         }
    668|

  Exception trace:

  1   PDOException::("SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes")
      D:\OSPanel\domains\catalog.loc\vendor\laravel\framework\src\Illuminate\Database\Connection.php:458

  2   PDOStatement::execute()
      D:\OSPanel\domains\catalog.loc\vendor\laravel\framework\src\Illuminate\Database\Connection.php:458

  Please use the argument -v to see more details.

GaneMax@GANEMAX D:\OSPanel\domains\catalog.loc

Не в сети

#15 23.04.2018 11:42:03

Re: Ошибка при создание миграции

Скорей всего проблема с таблицей или миграцией users

Не в сети

#16 23.04.2018 11:44:52

Re: Ошибка при создание миграции

Может заново проект загрузить

Не в сети

#17 23.04.2018 11:58:36

Re: Ошибка при создание миграции

Замените в файле миграции users вот эту часть. Это из "чистой" установки

public function up()
    {
        Schema::create('users', function (Blueprint $table) {
            $table->increments('id');
            $table->string('name');
            $table->string('email')->unique()->nullable();
            $table->string('password');
            $table->rememberToken();
            $table->timestamps();
        });
    }

Изменено Ramir (23.04.2018 12:03:18)

Не в сети

#18 23.04.2018 12:02:38

Re: Ошибка при создание миграции

По этой ошибке тут пишут https://laravel-news.com/laravel-5-4-key-too-long-error

Не в сети

#19 23.04.2018 13:10:36

Re: Ошибка при создание миграции

Замените в файле миграции users вот эту часть. Это из "чистой" установки

не работает

Не в сети

#20 23.04.2018 13:55:47

Re: Ошибка при создание миграции

проблема решилась смены MySQL 5.7 и все заработало

Не в сети

Подвал раздела