我有一些php artisan migrate的问题。它只在数据库中安装用户和迁移,但没有其他文件。我安装了这个项目https://github.com/thedevdojo/chatter所以你可以确定代码是清楚的并且它正在工作,它只是在这个项目上没有问题但是当我输入php artisan make:auth它不是安装重置密码表但只有用户而且它说像这样:
[Illuminate \ Database \ QueryException] SQLSTATE [42S01]:基表或 视图已存在:1050表'用户'已存在(SQL:create table
users
(id
int unsigned not null auto_increment primary key,name
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表'用户'已存在
答案 0 :(得分: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中的手动所有表,然后再次进行迁移。