Heim  >  Artikel  >  PHP-Framework  >  Fehler bei der Migration der Laravel-Datenbank

Fehler bei der Migration der Laravel-Datenbank

步履不停
步履不停Original
2019-06-27 16:57:482746Durchsuche

Fehler bei der Migration der Laravel-Datenbank

Problembeschreibung

(1) Laravel 5.4 oder höher hat den Standard-Datenbankzeichensatz geändert, jetzt bietet utf8mb4 Unterstützung für das Speichern von Emojis. Wenn Sie MySQL v5.7.7 oder höher ausführen, müssen Sie nichts tun.
(2) Wenn Sie versuchen, den Migrationsbefehl auf einigen MariaDB- oder älteren MySQL-Versionen auszuführen, tritt möglicherweise die folgende Fehlermeldung auf:
Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes
[Der angegebene Schlüssel ist zu lang. Ja, der Die maximale Schlüssellänge beträgt 767 Byte, da die Standardzeichenfolgenlänge von Laravel 767 Byte beträgt und Sie sie daher manuell konfigurieren müssen. 】

Lösung

<?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);
    }
}

Weitere technische Artikel zu Laravel finden Sie in der Spalte Laravel-Tutorial, um mehr zu erfahren!

Das obige ist der detaillierte Inhalt vonFehler bei der Migration der Laravel-Datenbank. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn