gpt4 book ai didi

php - Laravel 迁移表已经存在,但我想添加新的而不是旧的

转载 作者:IT老高 更新时间:2023-10-28 12:09:46 25 4
gpt4 key购买 nike

我之前创建了 users 表。现在,我创建了一个新的迁移以在我的架构中创建一个新的 books 表。当我尝试运行命令时

php artisan migrate

显示:

[Illuminate\Database\QueryException]
SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'users' alre
ady exists (SQL: create table `users` (`id` int unsigned not null auto_incr
ement primary key, `username` varchar(255) not null, `email` varchar(255) n
ot null, `password` varchar(255) not null, `created_at` timestamp default 0
not null, `updated_at` timestamp default 0 not null) default character set
utf8 collate utf8_unicode_ci)

这是我的新迁移表:

<?php

use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;

class CreateBooksTable extends Migration {
public function up()
{
Schema::create('books', function(Blueprint $table)
{
$table->increments('id');
$table->string('name');
$table->string('auther');
$table->string('area');
$table->timestamps();
});
}

public function down()
{
Schema::drop('books');
}
}

我怎样才能摆脱这个错误?

最佳答案

在 v5.x 中,您可能仍会遇到此问题。所以,尝试先手动删除相关表使用

php artisan 修补匠

然后

Schema::drop('books')

(并使用 q 退出)

现在,你可以成功php artisan migrate:rollbackphp artisan migrate了。

如果这种情况反复发生,您应该检查迁移中的 down() 方法是否显示正确的表名。 (如果您更改了表名,可能会遇到问题。)

关于php - Laravel 迁移表已经存在,但我想添加新的而不是旧的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26077458/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com