У меня есть таблица 'posts' и таблица 'Arrival', которая ссылается на 'flightno' (в формате текстовой строки) в качестве внешнего ключа.Однако, когда я запускаю миграцию Laravel, я получаю страшную ошибку:
[Illuminate \ Database \ QueryException] SQLSTATE [HY000]: общая ошибка: 1005 Не удается создать таблицу atc
. #sql-2350_84
(errno: 150 «Ограничение внешнего ключа сформировано неправильно») (SQL: изменить таблицу arrival
добавить ограничение arrival_flightno_foreign
ссылки на внешний ключ (flightno
) posts
(flightno
))
[PDOException] SQLSTATE [HY000]: общая ошибка: 1005 Невозможно создать таблицу atc
. #sql-2350_84
(ошибка: 150 «Неправильно сформировано ограничение внешнего ключа»)
Сообщений
Schema::create('posts', function (Blueprint $table) {
$table->increments('id');
$table->string('flightno');
$table->string('flighttype');
$table->string('toa');
$table->string('doa');
$table->string('runway');
$table->string('route');
$table->string('parking');
$table->timestamps();
});
Прибытие
Schema::create('arrival', function (Blueprint $table) {
$table->increments('id');
$table->string('flightno');
$table->string('cleaning');
$table->string('rampservice');
$table->string('waste');
$table->string('deicing');
$table->foreign('flightno')->references('flightno')->on('posts')->onDelete('cascade');
$table->timestamps();
});