SQL - Родительский ключ не найден - PullRequest
0 голосов
/ 11 апреля 2019

Итак, в таблицах я пытаюсь создать отношение внешнего ключа между SECTION и INSTRUCTOR, где INSTRUCTOR_ID в таблице SECTION - это внешний ключ, указывающий на первичный ключ INSTRUCTOR_ID в таблице INSTRUCTOR. К несчастью, Я получаю эту ошибку:

parent keys not found
02298. 00000 - "cannot validate (%s.%s) - parent keys not found"
*Cause:    an alter table validating constraint failed because the table has
           child records.
*Action:   Obvious
Vendor code 2298  

Есть идеи по поводу проблемы?

Ответы [ 2 ]

1 голос
/ 11 апреля 2019

Вы получаете эту ошибку, потому что в таблице разделов уже есть ряд данных.И эти строки имеют такие значения для instructor_id, которых нет в таблице инструкторов.

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

Итак, вам либо нужноудалите все данные из таблицы разделов или обновите значения instructor_id в таблице разделов, чтобы они совпадали с любыми значениями столбца instructor_id таблицы преподавателей.

1 голос
/ 11 апреля 2019

Проблема здесь очевидна, хотя может и не быть. Но, на первый взгляд, я думаю, что несколько значений Instructor_ID в таблице SECTION отсутствуют в таблице INSTRUCTOR, поэтому вы получили ошибку «родительские ключи не найдены». Вы уверены, что все Instructor_ID, присутствующие в таблице SECTION, также присутствуют в таблице INSTRUCTOR?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...