我使用命令
创建了一个表创建表: php artisan make:migration create_movie --create = movie
然后添加了身体& user_id列代码
public function up()
{
Schema::create('movie', function (Blueprint $table) {
$table->increments('id');
$table->text('body');
$table->integer('user_id');
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('movie');
}
然后点击 php artisan migrate 命令
但这显示了我的异常,我无法将电影表添加到数据库
[照亮\数据库\ 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表'用户'已存在
答案 0 :(得分:1)
您可以尝试像这样运行新的生成电影特定文件迁移
php artisan migrate --path=/database/migrations/{{Your_movie_migration_filename}}
答案 1 :(得分:1)
请清空迁移表并运行php artisan migrate
命令
或强>
在迁移文件夹中创建测试文件夹,然后在测试文件夹中移动/复制新创建的迁移,并在终端/ cmd中运行以下命令,如:
php artisan migrate --path=/database/migrations/test/
答案 2 :(得分:1)
清空数据库表并再次运行迁移,或者如果您不想丢失数据,请执行以下操作:
找到您的影片表迁移(数据库>迁移)并将日期更改为迁移文件中的任何最早日期,以使其首先进入该文件夹。
再次运行迁移,即使您收到有关用户表的错误(它不是错误,只是说它已经存在),也会创建电影表。
迁移从上到下迁移
答案 3 :(得分:0)
您可以使用下一个 artisan 命令来回滚您的所有迁移,然后执行 migrate 命令。请在此处查看文档 https://laravel.com/docs/8.x/migrations#roll-back-migrate-using-a-single-command
php artisan migrate:fresh