2016-07-03 2 views
-1

Keep получать это сообщение об ошибке, но не могу понять, что является причиной его ...Oracle "родительский ключ не найден" ошибка

CREATE TABLE section (
SectionID number (10), 
CourseID number(10), 
SectionNumber varchar2(10), 
Days varchar2(10), 
StartTime DATE, 
EndTime DATE, 
LocationID number (10), 
SeatsAvailable number(3), 
Status char(1) 
); 

ALTER TABLE section 
Add CONSTRAINT Student_SectionID_pk 
Primary KEY (SectionID); 

ALTER TABLE section 
ADD CONSTRAINT section_seatsvaiable_cc 
Check (SeatsAvailable < 100); 

ALTER TABLE section 
Add CONSTRAINT section_CourseID_fk 
FOREIGN KEY (courseid) 
references course (courseid); 


ALTER TABLE section 
Add CONSTRAINT section_LocationID_fk 
FOREIGN KEY (locationid) 
references location (locationid); 

INSERT INTO SECTION (sectionid, courseid, SectionNumber, Days, Starttime, endtime, locationid, SeatsAvailable, Status) 
VALUES (1, 99, 'B1-H', 'Tue', '22-MAY-13', '3-AUG-13', 29999, 23, 'A'); 

ошибка в строке 1:

ORA-02291: целостность ограничение (ECOOPER.SECTION_LOCATIONID_FK) нарушается - родительский ключ не найден

ответ

1

Рекордное место с ID 29999 не существует в таблице location.

Так что ваша вставка не удалась, потому что она не пропускает все ограничения.

+0

ах, я вижу. Получил это исправлено, спасибо! – ecooper10

Смежные вопросы