Answers for "Syntax error or access violation: 1071 Specified key was too long; max key length is 1000 bytes (SQL: alter table `users` add unique `users_e mail_unique`(`email`))"

PHP
13

Syntax error or access violation: 1071 Specified key was too long; max key length is 1000 bytes (SQL: alter table `users` add unique `users_email_unique`(`email`))

use Illuminate\Support\Facades\Schema;

public function boot()
{
    Schema::defaultStringLength(191);
}
Posted by: Guest on April-29-2020
1

Syntax error or access violation: 1071 Specified key was too long; max key length is 1000 bytes (SQL: alter table

Path : App/Providers/AppServiceProvider

Schema::defaultStringLength(191);
in AppServiceProvider didn't work for me. What worked for was editing the database.php file in config folder. Just edit

'charset' => 'utf8mb4',
'collation' => 'utf8mb4_unicode_ci',
to

'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
and it should work, although you will be unable to store extended multibyte characters like emoji.
Posted by: Guest on August-16-2021
0

Syntax error or access violation: 1071 Specified key was too long; max key length is 1000 bytes laravel 8

Some Solution that worked for me: (Try running command after config:clear and
                                   try migrate:fresh)
1. added default string length:

use Illuminate\Support\Facades\Schema;

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

2. changing engine to 'InnoDB' inside /config/database.php
  
'mysql' => [
    ...,
    ...,
    'engine' => 'InnoDB',
 ]
  
3. If still not solved try updating 'charset' and 'collation' inside 
  /config/database.php
  
'charset' => 'utf8mb4',
'collation' => 'utf8mb4_unicode_ci',

to

'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
Posted by: Guest on May-15-2021

Code answers related to "Syntax error or access violation: 1071 Specified key was too long; max key length is 1000 bytes (SQL: alter table `users` add unique `users_e mail_unique`(`email`))"

Browse Popular Code Answers by Language