Rumah >pangkalan data >tutorial mysql >Ralat Migrasi Laravel: Bagaimana untuk Membetulkan 'Kunci Yang Ditentukan Terlalu Panjang'?

Ralat Migrasi Laravel: Bagaimana untuk Membetulkan 'Kunci Yang Ditentukan Terlalu Panjang'?

DDD
DDDasal
2024-12-09 08:26:06229semak imbas

Laravel Migration Error: How to Fix

Ralat Migrasi Laravel: "Ralat Sintaks atau Pelanggaran Akses: 1071 Kunci Ditentukan Telah Terlalu Lama" Diselesaikan

Setelah menghadapi ralat migrasi yang disebutkan di atas dalam Laravel 5.4, ia adalah penting menangani punca asas. Ralat ini timbul apabila kunci yang ditentukan melebihi panjang aksara maksimum yang dibenarkan untuk indeks.

Untuk menyelesaikan isu ini, seperti yang dicadangkan dalam dokumentasi Laravel 7.x, ubah suai fail /app/Providers/AppServiceProvider.php anda sebagai berikut:

use Illuminate\Support\Facades\Schema;

public function boot()
{
    Schema::defaultStringLength(191);
}

Dengan menetapkan defaultStringLength kepada 191, anda memastikan bahawa semua migrasi masa hadapan patuhi had panjang ini.

Sebagai alternatif, anda boleh mendayakan pilihan innodb_large_prefix dalam konfigurasi pangkalan data anda. Walau bagaimanapun, adalah penting untuk merujuk dokumentasi pangkalan data anda untuk mendapatkan arahan khusus tentang cara mendayakan pilihan ini.

Atas ialah kandungan terperinci Ralat Migrasi Laravel: Bagaimana untuk Membetulkan 'Kunci Yang Ditentukan Terlalu Panjang'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn