【发布时间】:2019-06-14 05:05:00
【问题描述】:
我正在尝试将表迁移到 sql。我试图寻找我在这里找到的所有答案,但没有一个有效。我是 PHP 和 laravel 的新手,这让我发疯。 php 和 sql 版本来自最新的 xampp。这是我得到的错误。
我已经删除了现有的“用户”表。更新作曲家并运行 migrate:rollback 但仍然无法工作
这是我目前正在运行的代码。
<?php
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
class CreateUserTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('user', function (Blueprint $table) {
$table->increments('id');
$table->string('email')->unique();
$table->string('password');
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('user');
}
}
【问题讨论】:
-
"一般错误:1005 无法创建表
mysql.user"真的吗?不知道你在做什么? .. -
"我已经删除了现有的 'user' 表。"删除
mysql.user并重新创建不是很聪明。很可能你现在可以重新安装完整的 MySQL 服务器了。 -
mysql.user是mysql内部用户存储。永远不要丢弃或弄乱这张桌子。 ref。创建您自己的命名空间,例如lisandro.user。 -
是的,我太笨了,无法与 mysql.user 混淆,我放弃了它。我应该在采取任何进一步行动之前仔细研究。
-
您的问题是在您的
.env文件中,您出于某种原因放入了DB_DATABASE=mysql。如果您没有使用您的根数据库凭据进行应用程序访问,那么这个错误就不会成为问题。您需要重新安装 MySQL 并确保下次正确配置您的应用程序。