【发布时间】:2014-06-09 04:26:20
【问题描述】:
SQLite3 用户。
我已经阅读了大量有关关系数据库和 SQL 的书籍,但没有一本说明如何维护多对多关系的链接表。我刚刚浏览了一本书,其中详细介绍了 SELECT 和 JOINS 的示例,但是当涉及多对多关系时,我就忽略了这一点。作者只是展示了一个表的一些伪代码,没有数据,然后是一个伪代码查询--WTF?我可能遗漏了一些东西,但它变得非常令人抓狂。
无论如何,假设我有一个类似 [People] 的表,其中包含 3 列:pID(主要)、姓名和年龄。具有 3 列的表 [Groups]:gID(主要)、组名和年份。由于人们可以属于多个组并且组可以有多个人,因此我设置了一个名为 [peoplegroups] 的链接表,其中包含两列:pID 和 gID,它们都来自各自的表。
那么,当在其他人上进行 INSERTING 时,我如何有效地将数据导入链接表,以及如何使用链接表将数据取出?
示例:我想将“Jane”插入 [people] 并使她成为组 gID 2“bowlers”的成员,同时更新链接表 {peoplegroups]。 稍后我想返回并列出所有投球手或一个人所属的所有组的列表。
【问题讨论】:
-
当您需要新的会员资格时,您可以添加新记录。这到底是什么问题?
标签: sql select sqlite insert many-to-many