خطای migrate لاراول ۵٫۴

همونطور که میدونید لاراول ۵٫۴ مدتیه که منتشر شده. توی این نسخه، لاراول توی کاراکتر ست پیشفرضش یسری تغییری داده و کاراکتر ست فعلی اون utf8mb4 هست که قابلیت پشتیبانی از ایموجی ها رو هم داره.  خطایی که هنگام اجرایphp artisan migrate  توی MySQL  زیر  ۵٫۷٫۷ باهاش مواجه مشید یه چیزی مثل خطای زیر هست :

[Illuminate\Database\QueryException]
SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes (SQL: alter table users add unique users_email_unique(email))

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

برای حل این مشکل توی فایل AppServiceProvider.php  طول پشفرض رشته رو تغییر بدید…

use Illuminate\Support\Facades\Schema;

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

الان دیگه نباید مشکلی وجود داشته باشه… موفق باشید

 

توسط حمید

حمید هستم. برنامه نویس پی اچ پی و جاوااسکریپت و کمی تا قسمتی پایتون. اگه نیاز به برنامه نویس دارید با من تماس بگیرید: 09199656693

یک دیدگاه

دیدگاهی بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *