Php Laravel Migration-关键字名称太长,尽管只是;“测试”;;MySQL错误42000

Php Laravel Migration-关键字名称太长,尽管只是;“测试”;;MySQL错误42000,php,laravel,lumen,Php,Laravel,Lumen,迁移过程如下所示: <?php use Illuminate\Database\Migrations\Migration; use Illuminate\Database\Schema\Blueprint; use Illuminate\Support\Facades\Schema; class CreateExtensiontablesRegistry extends Migration { /** * Run the migrations. *

迁移过程如下所示:

<?php

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

class CreateExtensiontablesRegistry extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::create('extensiontables_registry', function (Blueprint $table) {
            $table->bigIncrements('id');
            $table->string('extensiontable_name')->nullable(false);//->unique();
            $table->timestamps();
            $table->unique('extensiontable_name', 'test');
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::dropIfExists('extensiontables_registry');
    }
}
为什么呢?我的意思是,“test”不能是一个太长的键名,对吗?我也尝试过这种方法:

但它也没有帮助:(

嗯,这可能不是一个“合适的”解决方案,但它对我有效: 只需下载一个包含mariaDB最新发行版的XAMPP版本,至少有一个版本高于10.1(如10.2等)。 以下是使用mariaDB 10.4的便携式XAMPP版本的链接:

好吧,这可能不是一个“合适”的解决方案,但它对我有效: 只需下载一个包含mariaDB最新发行版的XAMPP版本,至少有一个版本高于10.1(如10.2等)。 以下是使用mariaDB 10.4的便携式XAMPP版本的链接:

这是否回答了您的问题?@MCMXCII不幸的是,否:/您正在运行哪个版本的laravel?mysql驱动程序的版本是什么?您正在使用mariaDB吗?@N69S Im使用laravel Framework Lumen(6.2.0)(laravel组件^6.0)根据artisan.Im使用MariaDB的说法,是的,XAMPP:MariaDB的最新便携式发行版应该是这样的:欢迎使用MariaDB监视器。命令以;或结尾。您的MariaDB连接id是15服务器版本:10.1.38-MariaDB MariaDB.org二进制发行版与MariaDB 10.1有相同的问题,该版本修复了此问题回答您的问题了吗?@MCMXCII不幸的是,没有:/您正在运行哪个版本的laravel?mysql驱动程序的版本是什么?您正在使用mariaDB吗?@N69S Im使用laravel Framework Lumen(6.2.0)(laravel组件^6.0)根据artisan.Im使用MariaDB的说法,是的,XAMPP:MariaDB的最新便携式发行版应该是这样的:欢迎使用MariaDB监视器。命令以;或\g结尾。您的MariaDB连接id是15服务器版本:10.1.38-MariaDB MariaDB.org二进制发行版与MariaDB 10.1有相同的问题,此版本修复了它
In Connection.php line 669:

  SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was t
  oo long; max key length is 767 bytes (SQL: alter table `extensiontables_reg
  istry` add unique `test`(`extensiontable_name`))


In Connection.php line 463:

  SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was t
  oo long; max key length is 767 bytes