Ошибка MySQL 1452: невозможно добавить или обновить дочернюю строку - PullRequest
0 голосов
/ 20 апреля 2019

Прежде всего, извините за то, что это на нидерландском, я сомневаюсь, что понимаю, что язык необходим для этого.

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

These are the two tables i'm having trouble with.

This - это вставка из таблицы PARENT, которая не пуста, как вы можете видеть.

This - вставка из таблицы CHILD, заполненная существующими данными таблицы PARENT.

И, наконец, ошибка, которую я получаю при форвардинге here.

Я застрял так долго, был бы очень признателен за ответ. Надеюсь, я дал достаточно информации (впервые задаю вопрос).

1 Ответ

2 голосов
/ 20 апреля 2019

Ошибка Mysql 1452 означает, что вы пытаетесь вставить дочерние записи, родительские идентификаторы которых отсутствуют в родительской таблице.

попробуйте сопоставить столбцы с помощью следующего запроса.

SELECT 
    DISTINCT ct.id 
FROM 
   child_table as ct 
   LEFT JOIN parent_table as pt ON ct.parent_id=pt.id 
WHERE 
    pt.id IS NULL;

Надеюсь, это поможет!

...