Maison > Article > développement back-end > Comment corriger l'erreur « La clé spécifiée était trop longue » dans les migrations Laravel ?
Correction de l'erreur « La clé spécifiée était trop longue » dans les migrations Laravel
Lors de la migration des tables dans Laravel, les développeurs peuvent rencontrer le message « La clé spécifiée était erreur "trop longue". En effet, la longueur maximale par défaut des clés dans MySQL est de 767 octets.
Une solution consiste à spécifier explicitement la longueur de la clé dans la migration. Par exemple :
Schema::create('users', function(Blueprint $table) { $table->increments('id'); $table->string('email', 250)->unique('users_email_unique'); });
Laravel 5.4 et supérieur
Dans Laravel 5.4 et supérieur, la longueur de chaîne par défaut peut être définie dans le fichier AppServiceProvider.php :
<code class="php">use Illuminate\Database\Schema\Builder; public function boot() { Builder::defaultStringLength(191); }</code>
Vous pouvez également spécifier la longueur de colonnes individuelles au sein de la migration :
<code class="php">Schema::create('users', function(Blueprint $table) { $table->increments('id'); $table->string('email', 191)->unique('users_email_unique'); });</code>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!