【问题标题】:i got this problem while creating migration我在创建迁移时遇到了这个问题
【发布时间】:2019-10-07 12:05:39
【问题描述】:

我正在运行 'php artisan migrate' 我收到此错误:

([Illuminate\Database\QueryException] SQLSTATE[42000]: 语法错误或 访问冲突:1071 指定的密钥太长;最大密钥长度是 767 字节(SQL:alter table users 添加唯一 users_email_unique(email))) 之后在 AppServiceProvider.php 中

添加此代码

(使用 Illuminate\Support\Facades\Schema;和 架构::defaultStringLength(191);)

现在我得到另一个错误

(PHP 致命错误:无法使用 Illuminate\Support\Facadesenter code here\Schema 作为 Schema,因为该名称已在 C:\xampp\htdocs\projects\app\Providers\AppServiceProvider.php 上线 7)

以下是AppServiceProvider.php代码

<?php


namespace App\Providers;
use Illuminate\Support\ServiceProvider;
use mysql_xdevapi\Schema;
use Illuminate\Support\Facades\Schema;

class AppServiceProvider extends ServiceProvider

{
    /**
     * Bootstrap any application services.
     *
     * @return void
     */
    public function boot()
    {
           Schema::defaultStringLength(191);
    }

    /**
     * Register any application services.
     *
     * @return void
     */
    public function register()`enter code here`
    {
        //
    }
}

【问题讨论】:

    标签: javascript php laravel svg-animationelements


    【解决方案1】:

    我想您收到此错误是因为您尝试导入 2 个 Schema 类。

    尝试从您的AppServiceProvider 顶部删除use mysql_xdevapi\Schema;

    【讨论】:

    • 我删除了使用mysql_xdevapi\Schema;现在我遇到了一个新错误
    • 问题是( SQLSTATE[HY000] [2002] 无法建立连接,因为目标机器主动拒绝它。(SQL:select * from information_schema.tables where table_schema = laravel and table_name = migrations)在 Connector.php 第 68 行:SQLSTATE[HY000] [2002] 无法建立连接,因为目标机器主动拒绝了它。)
    • 我不知道,但那时我的 php artisan 迁移给出了这个问题。但它在删除我的数据库表后解决
    猜你喜欢
    • 1970-01-01
    • 2018-12-22
    • 2021-09-15
    • 2011-01-16
    • 1970-01-01
    • 1970-01-01
    • 2022-07-16
    • 1970-01-01
    • 2015-12-04
    相关资源
    最近更新 更多