Erro de Syntax no Laravel 5

Uma dica bem simples e rápida de Laravel 5.

Algumas vezes ao instalar o Laravel, criamos uma database e pedimos para que seja instalado o banco com nossas migrations.

Mas é comum aparecer erros do tipo:

[cc lang=”php”]
[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 uni
que `users_email_unique`(`email`))
[/cc]

Isso se dá porque o Laravel se adaptou a novas versões do MySQL onde pode inserir emoticons em suas tables, isso afeta algumas versões anteriores do banco em questão.

Para resolver este erro não é tão complexo. Você pode definir um tamanho para suas colunas de sua tabela ou inserir o seguinte código abaixo no arquivo ‘AppServiceProvider’ que fica dentro da pasta app > Providers.

No arquivo, insira a biblioteca:

[cc lang=”php”]
use Illuminate\Support\Facades\Schema;
[/cc]

Em seguida, dentro de Boot, insira um default para string.

[cc lang=”PHP”]
public function boot()
{
Schema::defaultStringLength(191);
}
[/cc]

Font: https://laravel-news.com/laravel-5-4-key-too-long-error

About Rubens Junior 18 Articles
Programador Sênior na empresa Hositec, Front-end e Backend; Conhecimento em: Java, PHP, Android, Mysql, HTML, CSS, SASS, LESS, Type Script, Jquery, Webservice, JavaScript... e eterno estudante de outras linguagens também.