Миграция Laravel: код ошибки: 150 & ldquo; Неправильно сформировано ограничение внешнего ключа & rdquo;

Если график направлен, вам нужно будет только проверить родительские узлы (перемещаться вверх, пока не достигнете корня) узла, где должно начинаться новое ребро. Если один из родительских узлов равен концу ребра, добавление края создаст цикл.

-1
задан Léo Coletta 5 March 2019 в 17:07
поделиться

1 ответ

Должен быть один unassignedBigInteger, а затем вы устанавливаете свой внешний ключ.

https://laravel.com/docs/5.8/migrations#foreign-key-constraints Пожалуйста, проверьте официальную документацию

Кроме того,

Пожалуйста, будьте осторожны с порядком миграции. Он начинается с первого файла до самого последнего, поэтому, если вы пытаетесь установить внешний ключ для таблицы, которая еще не создана, он выдаст ошибку.

Например,

Таблица пользователей имеет отношение внешнего ключа к статьям и тому подобное:

  • create_users_table
  • create_articles_table
[1110 ] Поскольку таблица статей еще не создана, вы не сможете ее назначить. Для таких случаев, как этот, я предлагаю вам использовать «add_foreign_keys_to_articles» после создания всей базовой структуры таблиц.

     Schema::table('articles', function(Blueprint $table)
            {
   $table->foreign('user_id')
                ->references('id')->on('users')
                ->onUpdate('cascade')->onDelete('cascade');
            });
0
ответ дан Ömer Atagün 5 March 2019 в 17:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: