Невозможно установить ограничения FK в MySQL

У меня есть проблема, которую я не могу решить прямо сейчас, и я прочитал похожий вопрос, но я не помог мне!

У меня есть таблица «Пользователи» и таблица «Книги», и я хочу установить отношение ОДИН к ОДНОМУ между ними.

Я пытаюсь установить users_id — PK в Users для FK в таблице Books, но это не работает!

Что я делаю неправильно?

Пожалуйста помоги!

Я добавлю изображения для шагов, которые я прохожу в том же порядке:

Таблица пользователей
введите описание изображения здесь

Таблица книг, с индексом users_id (не уникальным)
введите описание изображения здесь

Установка ограничения для FK
введите описание изображения здесь

И наконец ОШИБКА
s

-1

Решение

Это означает, что у вас есть books строка, которая не имеет соответствия user_id в users Таблица.

Вам нужно сначала добавить пользователя или обновить таблицу книг.

Если вы добавите внешний ключ, вы не можете иметь null или же 0 значения (для AUTO_INCREMENT ключи) в ваших books.user_id больше.

2

Другие решения

Других решений пока нет …