Что такое внешние ключи MySQL?

В ответе на переполнение стека я видел это код:

CREATE TABLE Favorites (
    user_id INT NOT NULL,
    movie_id INT NOT NULL,
    PRIMARY KEY (user_id, movie_id),
    FOREIGN KEY (user_id) REFERENCES Users(user_id),
    FOREIGN KEY (movie_id) REFERENCES Movies(movie_id)
);

Я никогда раньше не использовал ключевое слово отношения «внешний ключ».

  • Что это такое?
  • Почему люди его используют?
  • Предоставляет ли оно какие-либо преимущества помимо семантики?
15
задан Delan Azabani 15 September 2010 в 22:21
поделиться