Ceinwyn,
Are you sure you ticked the "enforce referential integrity" box when you set up the joins?
you also mention pre filled tables, I believe that if the data was already in the tables when you set up, it may not have been enforced.
I must admit I'm not an expert, but that is where I...