数据库中多对多的关系设计.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据库中多对多的关系设计 数据库设计多对多关系的几种形态 序言:多对多关系起码需要3个表,我们把一个表叫做主表,一个叫做关系表,此外一个 叫做词典表或许副表(词典表是纪录比较少,并且基本稳固的,比如:版块名称;副表是内 容比许多,内容变化的,比如)。 依据数据库的增删查改操作,多对多关系的查找都能够用innerjoin或许select*from主 表whereidin(select主表idfrom关系表) ,角色委任型 特色:关系表两外键组合无重复纪录,关系表一般不需要时间字段和主键,有一个表是词典 种类的表。 界面特色:显示主表,用checkbox或多项选择select设置多项选择关系。 比如:委任版主(用户表-关系表-版块名称表),角色权限控制等,用户是5个版块版主, 只需关系表5行纪录就能够确定,关系表的两个外键拥有结合主键性质。 增添关系:假如没有组合纪录,insert之。 删除关系:假如有组合纪录,删除之。 ,会合分组型 特色:同角色委任型近似,关系表两外键组合无重复纪录,关系表一般不需要时间字段和主 优选文档 键。差别是主副表都不是词典表,可能都很大不固定。 界面特色:显示主表,用搜寻取代简单的checkbox或多项选择select,或许一条一条的增添。 比如:歌曲专集(专集表-关系表-歌曲表)。手机分组(分组表-关系表-手机表)。用户圈 子(圈子表-关系表-用户表)。文章标签(文章表-关系表-标签表) 增添关系:同版主委任型。 删除关系:同版主委任型。 ,明细帐型 特色:关系表能够有重复纪录,关系表一般有时间字段,有主键,可能还有文字型的字段用 来说明每次发生关系的原由(花费)。 界面特色:显示关系表,用radio或下拉设置单项选择关系。 比如:现金花费明细帐或订单(用户表-订单表-花费原由表),用户可能多次在同一事情上 重复花费。积分变化纪录也属于这种。 增添关系:不论有没有组合纪录,insert之,纪录时间。 删除关系:依据关系表PK删除。 ,议论答复型 特色:同明细帐型关系表一般有时间字段,有主键,差别是要点在文字型的字段用来说明每 次发生关系的内容(议论答复)。 界面特色:答复文本框。 —2 优选文档 比如:论坛答复(用户表-答复表-帖子表),用户可能多次在不同帖子上议论答复费。 增添关系:不论有没有组合纪录,insert之,纪录时间和文字。 删除关系:依据关系表(答复表)PK删除。 ,站内短信型 特色:主副表是同一个,关系表一般有时间字段,有主键,要点在关系表文字型的字段用来 说明每次发生关系的内容(信息)或许其余标志位来表示文字已读状态时间等。 界面特色:答复文本框。 比如:站内短信(用户表-短信表-用户表),用户可能给用户群发或许单发,有标志位来表 示文字已读状态时间等。 增添关系:不论有没有组合纪录,insert之,纪录时间和文字。 删除关系:依据关系表(答复表)PK删除。 ,用户挚友型 特色:主副表是同一个,同会合分组型,关系表两外键组合无重复纪录,关系表一般不需要 时间字段和主键。 界面特色:同会合分组型,显示主表,用搜寻取代简单的checkbox或多项选择select,或许一 条一条的增添。 比如:下载站点的文件,(文件表-关系表-文件表)能够被软件工具翻开,软件工具自己也 是一种文件,能够被下载。用户的挚友,也是用户(用户表-挚友关系表-用户表) —3 优选文档 增添关系:同版主委任型。 删除关系:同版主委任型。 ,未知属性型 特色:在设计早期,主表的某些字段种类和名称是不确定的时候,关系表其实是主表的可 扩展字段, 一个[主表](ID), 一个[属性名称表](属性ID.属性名称), 一个[属性值表],包含3个字段: 属性值(属性Valuevarchar(500)) 主表ID 属性ID 这样能够作到最小冗余度。 (和常有的多对多关系不同的是:值一致用varchar来储存,由于这种类的值一般不会用来 计算)。 比方: 军队的数据库设计中有种物质叫做“战缴物质”,就是打仗的时候缴获的,军队自己都不知 道这些物质有什么属性。 比方缴获的化学品有化学名,通用名,能否有辐射,计量单位,包装规格,数目等等,或许 不是化学品是其余任何未知的东西。 这样东西就能够 —4 优选文档 某奇异东西.属性会合[某某奇异属性名]=某某奇异值; 某变态东西.属性会合[某某变态属性名]=某某变态值; 这样储存。 再比方: 手机型号有几千种,除了共同属性外还有不同属性有几百个,属性名和值种类都不同样,有 的手机有这属性,有的没有。 关于这样的“多态”,我们就采纳上边的设计构造。 其成效相当于: 某奇异手机.属性会合[某某奇异属性名]=某某奇异值; 某变态手机.属性会合[某某变态属性名]=某某变态值; 界面特色:设置主表

文档评论(0)

187****3476 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档