Невозможно добавить или обновить дочернюю строку MySQL Error 1452
Я получаю эту ошибку:
ОШИБКА 1452 (23000): Невозможно добавить или обновить дочернюю строку: ограничение внешнего ключа не выполнено (
university
,registration
, ОГРАНИЧЕНИЕregistration_ibfk_2
ИНОСТРАННЫЙ КЛЮЧ (section_id
) РЕКОМЕНДАЦИИSection
(section_id
))
Это мой код
INSERT INTO Registration VALUES (24766, 1102, 'B', 'B');
CREATE TABLE Registration (
student_id INT,
section_id INT,
midterm_grade VARCHAR(5),
final_grade VARCHAR(5),
PRIMARY KEY (student_id, section_id),
FOREIGN KEY (student_id)
REFERENCES Student (student_id),
FOREIGN KEY (section_id)
REFERENCES Section (section_id)
);
Любая помощь будет оценена по решению этой проблемы.
1 ответ
Это распространенная ошибка в MySQL, наиболее вероятная из-за которой student_id
24766
не существует в Student
стол или section_id
1102
не существует в Section
Таблица.
Исправление состоит в том, чтобы просто убедиться, что ваши внешние ключи в Registration
таблица указывает на фактические первичные ключи записей в двух других таблицах. Таким образом, вам может понадобиться вставить некоторые данные, чтобы устранить эту ошибку.