首页 文章

Laravel迁移

提问于
浏览
-3

我有一些php artisan migrate的问题 . 它只在数据库中安装用户和迁移,但没有其他文件 . 我安装了这个项目https://github.com/thedevdojo/chatter所以你可以确定代码是清楚的,它只是在这个项目上没有问题,但当我输入php artisan make:auth它不是安装重置密码表而只是用户,它说是这样的:

[Illuminate \ Database \ QueryException] SQLSTATE [42S01]:基表或视图已存在:1050表'users'已存在(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 tim estamp null)默认字符集utf8mb4 collate utf8mb4_unicode_ci)[PDOException] SQLSTATE [42S01]:基表或视图已存在:1050表'用户'已存在

1 回答

  • 0

    尝试将您的表放在数据库中并重新迁移 . 如果它仍然无法工作,你可以检查文件夹配置中的database.php . 将每个utf8mb4更改为utf8 . 这是更改database.php之前的示例:

    'mysql' => [
                'driver' => 'mysql',
                'host' => env('DB_HOST', '127.0.0.1'),
                'port' => env('DB_PORT', '3306'),
                'database' => env('DB_DATABASE', 'forge'),
                'username' => env('DB_USERNAME', 'forge'),
                'password' => env('DB_PASSWORD', ''),
                'unix_socket' => env('DB_SOCKET', ''),
                'charset' => 'utf8mb4',
                'collation' => 'utf8mb4_unicode_ci',
                'prefix' => '',
                'strict' => true,
                'engine' => null,
            ],
    

    在你改变之后:

    'mysql' => [
                'driver' => 'mysql',
                'host' => env('DB_HOST', '127.0.0.1'),
                'port' => env('DB_PORT', '3306'),
                'database' => env('DB_DATABASE', 'forge'),
                'username' => env('DB_USERNAME', 'forge'),
                'password' => env('DB_PASSWORD', ''),
                'unix_socket' => env('DB_SOCKET', ''),
                'charset' => 'utf8',
                'collation' => 'utf8_unicode_ci',
                'prefix' => '',
                'strict' => true,
                'engine' => null,
            ],
    

    之后,您可以删除db中的手动所有表,然后再次执行迁移 .

相关问题