Я пытаюсь добавить FK 'module_id' к моей таблице 'Documents'. Я выполнил следующий запрос:
public function up()
{
Schema::table('documents', function (Blueprint $table) {
$table->integer('module_id')->unsigned();
$table->foreign('module_id')->references('id')->on('modules');
});
}
Возвращается следующая ошибка:
SQLSTATE [HY000]: общая ошибка: 1215 Невозможно добавить ограничение внешнего ключа (SQL : alter table documents
добавить ограничение documents_module_id_foreign
ссылки на внешние ключи (module_id
) modules
(id
))
Я не уверен, что делаю неправильно, я Я уверен, что это, вероятно, глупая ошибка, но я провел много времени в кругах, пытаясь выяснить это ... вот что я пытался ..
- обе таблицы уже создал
- типы данных для обоих столбцов непротиворечивы (оба unsignedBigInts, 20)
Я включил изображение своих таблиц БД, я ценю любую помощь.
Обновление:
SQLSTATE [23000]: нарушение ограничения целостности: 1452 Невозможно добавить или обновить дочерняя строка: сбой ограничения внешнего ключа (laravel
. #sql-2cd_23
, CONSTRAINT documents_module_id_foreign
FOREIGN KEY (module_id
) ССЫЛКИ modules
(id
)) (SQL: изменить таблицу documents
добавить ограничение documents_module_id_foreign
ссылки на внешние ключи (module_id
) modules
(id
))