SQLSTATE[HY000]: Общая ошибка: 1 В предложении О КОНФЛИКТЕ не соответствует какой-либо ошибке ПЕРВИЧНОГО КЛЮЧА или УНИКАЛЬНОГО ограничения в тестовой среде

#php #laravel

Вопрос:

Я использую mysql в своей среде laravel и использую sqlite в качестве базы данных .env.testing . Я мог бы легко запустить php artisan migrate:fresh --seed laravel, но если я запущу php artisan migrate:fresh --seed --env=testing , я получу ошибку:

 SQLSTATE[HY000]: General error: 1 ON CONFLICT clause does not match any PRIMARY KEY or UNIQUE constraint 
 

И моя эта конкретная сеялка, где она выдает ошибку, выглядит так:

 <?php

namespace DatabaseSeeders;

use AppModelsPermission;
use IlluminateDatabaseSeeder;

class PermissionsSeeder extends Seeder
{
    /**
     * Run the database seeds.
     *
     * @return void
     */
    public function run()
    {
        Permission::upsert([
            /**
             * User Model Related Permissions 1-4
             */
            [
                'name' => 'user-view',
                'label' => 'User View',
                'description' => 'Allows to view users',
                'created_at' => now(),
                'updated_at' => now()
            ],
            [
                'name' => 'user-create',
                'label' => 'User Create',
                'description' => 'Allows to create user',
                'created_at' => now(),
                'updated_at' => now()
            ],
            [
                'name' => 'user-update',
                'label' => 'User Update',
                'description' => 'Allows to update user',
                'created_at' => now(),
                'updated_at' => now()
            ],
            [
                'name' => 'user-destroy',
                'label' => 'User Destroy',
                'description' => 'Allows to destroy user',
                'created_at' => now(),
                'updated_at' => now()
            ],
            
        ], ['name'], ['label','description','updated_at']);
    }
}

 

Этот же код работает в среде .env, но не в .env.testing среде, но, как я уже упоминал .env , использует mysql, где as .env.testing использует sqlite