Tworzysz klucz złożony (lub złożony) ustawiając to jako podstawowe:
("COURSE_ID", "ACCREDITATION_BODY_ID", "DATE_OBTAINED")
a następnie próbujesz utworzyć ACCREDITATION_BODY_ID
klucz obcy, odwołujący się do tej samej kolumny w tej samej tabeli. Nie wiem, co chcesz osiągnąć, ale i tak nie we właściwy sposób.
Moim zdaniem Powód to: ACCREDITATION_BODY_ID
musi być kluczem podstawowym, aby można było się do niego odwoływać jako klucz obcy, ale tak nie jest w tym przypadku. Ograniczeniem tabeli jest klucz złożony i musisz odwołać się do wszystkich kolumny w wyciągu klucza obcego. (napraw mnie, jeśli się mylę)
Spróbuj odwołać się do wszystkich kolumn kluczy złożonych w instrukcji klucza obcego. To może rozwiązać twój problem.
Nawiasem mówiąc, odwoływanie się do klucza podstawowego jako do klucza obcego w tej samej tabeli nie miało dla mnie sensu (może czegoś mi brakuje, ale nadal ...). Rozważę zmianę projektu.