Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Por que a criação de chave estrangeira no Laravel 5.8 está falhando?


Conforme discutimos nos comentários acima, uma coluna de chave estrangeira deve ser do mesmo tipo de dados que a chave primária à qual ela faz referência.

Você declarou seu user.id chave primária como $table->bigIncrements('id') que se torna BIGINT UNSIGNED AUTO_INCREMENT na sintaxe do MySQL.

Você deve declarar a chave estrangeira como $table->unsignedBigInteger('user_id') que se tornará BIGINT UNSIGNED no MySQL, tornando-o compatível com ser uma chave estrangeira para o user.id coluna.