Mysql
 sql >> база данни >  >> RDS >> Mysql

Миграция на Laravel (errno:150 Ограничението за външен ключ е неправилно формирано)

Тъй като increments() създава колона с цяло число без знак, трябва да дефинирате колоната с външен ключ също като цяло число без знак.

Миграциите по подразбиране в Laravel 6+ използват bigIncrements() , така че трябва да използвате unsignedBigInteger() метод:

$table->unsignedBigInteger('order_id');

https://laravel.com/docs/6.x/migrations #foreign-key-constraints

За миграции по подразбиране в по-стари версии на Laravel използвайте unsignedInteger() метод:

$table->unsignedInteger('order_id');

Или:

$table->integer('order_id')->unsigned();

https://laravel.com/docs/5.5/migrations#foreign-key -ограничения



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Най-добрият тип поле на база данни за URL

  2. CAST DECIMAL към INT

  3. MySQL с меко изтриване, ограничения за уникален ключ и външни ключове

  4. Разрешете влизането в Docker mysql контейнер

  5. Възможно ли е да се вмъкнат данни в две различни таблици в mysql чрез една заявка за вмъкване php?