Laravel добавить данные после переноса причина ошибки - PullRequest
1 голос
/ 12 января 2020

Я хочу добавить эти данные после refresh или database migration

public function up()
    {
        Schema::create('locations', function (Blueprint $table) {
            $table->bigIncrements('id');
            $table->integer('type');
            $table->integer('pid')->default(0);
            $table->integer('cid')->default(0);
            $table->string('name');
            $table->timestamps();
        });

        DB::table('locations')->insert([
            ['type' => 1, 'name' => 'Istanbul'],
            ['type' => 2, 'name' => 'Istanbul', 'pid' => 1],
            ['type' => 3, 'name' => 'Taksim', 'cid' => 2],
            ['type' => 3, 'name' => 'Beyoglu', 'cid' => 2],
        ]);
    }

, но это дает мне эту ошибку:

? [41; 1м Подсветка \ База данных \ QueryException? [49; 22 м:? [33mSQLSTATE [42S01]: Базовая таблица или представление уже существует: 1050 «Расположение» таблицы уже существует (SQL: создание таблицы locations (id bigint unsigned) не нулевой auto_increment первичный ключ, type int не нулевой, pid int не нулевой по умолчанию '0', cid int не нулевой по умолчанию '0', name varchar (255) не нулевой, created_at отметка времени нулевая , updated_at ti mestamp null) набор символов по умолчанию utf8mb4 collate 'utf8mb4_unicode_ci')

Как я могу решить эту проблему?

1 Ответ

1 голос
/ 12 января 2020

Удалите DB:table из вашей миграции и запустите:

php artisan migrate:refresh

Затем

php artisan make:seed LocationTableSeeder

Затем добавить это к run() функции:

    DB::table('locations')->insert([
        ['type' => 1, 'name' => 'Istanbul', 'pid' => 0, 'cid' => 0, 'created_at' => Carbon::now()->format('Y-m-d H:i:s'), 'updated_at' => Carbon::now()->format('Y-m-d H:i:s')],
        ['type' => 2, 'name' => 'Istanbul', 'pid' => 1, 'cid' => 0, 'created_at' => Carbon::now()->format('Y-m-d H:i:s'), 'updated_at' => Carbon::now()->format('Y-m-d H:i:s')],
        ['type' => 3, 'name' => 'Taksim', 'cid' => 2, 'pid' => 0, 'created_at' => Carbon::now()->format('Y-m-d H:i:s'), 'updated_at' => Carbon::now()->format('Y-m-d H:i:s')],
        ['type' => 3, 'name' => 'Beyoglu', 'cid' => 2, 'pid' => 0, 'created_at' => Carbon::now()->format('Y-m-d H:i:s'), 'updated_at' => Carbon::now()->format('Y-m-d H:i:s')],
    ]);

Затем

php artisan db:seed --class=LocationTableSeeder
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...