gpt4 book ai didi

MySQL来自同一张表的两个外键

转载 作者:太空宇宙 更新时间:2023-11-03 11:33:22 25 4
gpt4 key购买 nike

是否可以在同一个表的表中有两个外键示例帖子表具有来自表用户的 user_id 和用户名

--------------------------------
|table user | table post |
|-------------|----------------|
|user_id | post_id |
|username | post_title |
|password | post_content |
|email | user_id Fk |
| | username Fk |
--------------------------------

最佳答案

技术上没问题。

但请记住,上面列出的结构可能会导致一些奇怪的情况。

如果允许用户更改他自己的用户名(这是关于是否可取的单独讨论),那么您最终可能会遇到一些用户无法更改其名称的情况(因为那么外键完整性将被引用他名字的帖子破坏)或者用户可以通过更改名称以匹配来尝试劫持另一个用户的帖子。

所有这些问题都可以很容易地避免,但作为一般规则,我认为最好坚持使用单个外键,并且通常使用数字(如 user_id)而不是文本。

@Alan 提到了一个表中的两个字段引用另一个表的同一个外键字段的想法 - 这很常见并且通常没问题。

关于MySQL来自同一张表的两个外键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47965036/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com