Question: what is the difference between join and foreign key?
Answer: A FOREIGN KEY enforces data integrity, making sure the data confirms to some rules when it is added to the DB. A JOIN is used when you extract/query data from the DB by giving rules how to select the data. JOIN s work if there are FK or not. FK's work if you extract data with or without JOIN s.