Una domanda forse banale ci sono dati nelle tabelle?
Può essere che in qualche tabella ci sono dati che non rispettano questa relazione??
Perchè non provi e mettere queste chiavi alla creazione della tabella???