回答

收藏

什么是 MySQL 外键?

技术问答 技术问答 250 人阅读 | 0 人回复 | 2023-09-12

我看到了这个代码:
# ^* @8 Y1 `# v* OCREATE 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));我以前从未使用过外键关系关键词。
. }# p* Y- j; f" h# w它是什么?  \$ Z) l& ~3 @- K# S3 U( ?
                                                                8 V2 W: ^6 b" R
    解决方案:                                                               
" ~9 z& ^  C4 [+ V, r# n/ ?                                                                外键是引用另一个表中的主键或表本身。它用于所谓的参考完整性。基本上,您的表提供给插入记录的记录Favorites-你必须提供有效的user_id从Users并且有效movie_id从Movies表。用外键强制,我不能Users或 中删除记录Movies。如果我没有外键,我可以删除这些记录。然后,如果我SELECT ... JOIN在Favorites上面做一个会坏掉。
; J+ p" E* u$ O8 V  U& \7 f9 v参见维基百科。
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则