ALTER TABLE WORKPACKAGES
ADD FOREIGN KEY (EMPLOYEEID) REFERENCES EMPLOYEES (EMPLOYEEID);
Gdy ten klucz jest wymuszany, Oracle sprawdza, czy wszystkie identyfikatory pracownika obecne w tabeli Pakiety robocze znajdują się w tabeli Pracownicy.
Twoje opcje:
Znajdź nieprawidłowe klucze, uruchamiając
SELECT employeeid
FROM workpackages
WHERE employeeid NOT IN (SELECT employeeid
FROM employees);
a następnie wstaw je do tabeli pracowników.
Inną opcją jest użycie NOVALIDATE tak, że istniejące dane nie są sprawdzane, ale wszystkie nowe wstawki/aktualizacje będą sprawdzane. Zobacz te skrzypce do demonstracji na ten temat.