Нарушение SQL при добавлении внешнего ключа, Laravel - PullRequest
0 голосов
/ 26 февраля 2019

Мне нужна твоя помощь!:( Я пытаюсь добавить внешний ключ в существующую таблицу с данными, но я получил ошибку, я думаю, потому что в таблице есть данные, я проверил все миграции в новой БД и все работало нормально, кто-то знает, если возможно добавитьвнешний ключ таблица с данными ??

Schema::table('cicles', function(Blueprint $table) {

        $table->integer('shiftId')->unsigned()->change();
        $table->foreign('shiftId')->references('id')->on('shifts');

    });

Это когда просто запустите миграцию, чтобы добавить внешний ключ This when just run the migration to add the foreign key

Это когда запустите всемиграции

enter image description here

1 Ответ

0 голосов
/ 26 февраля 2019

Вы не можете добавить ограничение внешнего ключа, если у вас есть данные, которые нарушают новое ограничение.Чтобы найти данные, которые нарушают ограничение, выполните внешнее объединение.

SELECT circles.*
FROM circles
     LEFT OUTER JOIN shifts
       ON circles.shiftId = shifts.id
WHERE shifts.id IS NULL
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...