Maison  >  Article  >  cadre php  >  erreur de migration de la base de données Laravel

erreur de migration de la base de données Laravel

步履不停
步履不停original
2019-06-27 16:57:482724parcourir

erreur de migration de la base de données Laravel

Description du problème

(1) Laravel 5.4 ou supérieur a modifié le jeu de caractères par défaut de la base de données, utf8mb4 inclut désormais la prise en charge du stockage des emojis. Si vous exécutez MySQL v5.7.7 ou une version ultérieure, vous n'avez rien à faire.
(2) Lorsque vous essayez d'exécuter la commande migrations sur certaines MariaDB ou certaines anciennes versions de MySQL, vous pouvez rencontrer l'erreur suivante :
Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes
[La clé spécifiée est trop longue Oui, la la longueur maximale de la clé est de 767 octets, car la longueur de chaîne par défaut de Laravel est de 767 octets, vous devez donc la configurer manuellement. 】

Solution

<?php
namespace App\Providers;
// 导入Schema类
use Illuminate\Support\Facades\Schema;
use Illuminate\Support\ServiceProvider;

class AppServiceProvider extends ServiceProvider
{
    public function boot()
    {
        // 在app/providers/AppServiceProvider.php中boot方法中加上 
        Schema::defaultStringLength(191);
    }
}

Pour plus d'articles techniques liés à Laravel, veuillez visiter la colonne Tutoriel Laravel pour apprendre !

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn