sql中表之间的关系有什么优势?

问题描述 投票:4回答:1

我做了三张桌子。 Table1 = users.And列名是userid(auto_increment)和username。 表2 =爱好。列名是hobbyid(auto_increment)和hobbyname。 表3 = users_hobbies。列名是FK_userid和FK_hobbyid。

现在每当我从html表单注册新用户和他/她的爱好时,我选择 从表1和表2生成的相应用户标识和hoobyid 并使用查询将它们插入表3

那么,如果我在表1和表3以及表2和表3之间创建它,关系的用途是什么? 相应的userid和hobbyid是否会在不使用查询的情况下自动转到表3?

php mysql sql relation
1个回答
10
投票

不,userid和hobbyid不会自动进入任何地方。

关系或主要约束的主要关键是强制数据完整性。这意味着你不应该在user_hobbies表中添加包含id 2,2的条目,而不是id为2的用户和id为2的业余爱好。

为了保持这种完整性,您还可以指定级联。 (根据数据库系统,我几乎不使用mysql,所以我不确定)。

这意味着,如果删除了用户本人,则可以指定删除id为1的用户的所有users_hobbies。

© www.soinside.com 2019 - 2024. All rights reserved.