Database design 转入二年级
伙计们,你们将如何创建这个表的第二种形式(主键是:{isbn,copy}):Database design 转入二年级,database-design,database-normalization,Database Design,Database Normalization,伙计们,你们将如何创建这个表的第二种形式(主键是:{isbn,copy}): isbnAB-1234-X authorIDIC45 authorNameI.Conn 标题最后的帷幕 复制2 分类检测功能 userIDxyz44将您的分类和作者放在一个单独的表中,如下所示: 书桌: isbnAB-1234-X authorIDIC45 标题最后的帷幕 复制2 ClassificationId1 用户IDxyz44 作者表: 作者 AuthorName 分类: 分类ID Classification
isbnAB-1234-X
authorIDIC45
authorNameI.Conn
标题最后的帷幕
复制2
分类检测功能
userIDxyz44将您的分类和作者放在一个单独的表中,如下所示: 书桌: isbnAB-1234-X authorIDIC45 标题最后的帷幕 复制2 ClassificationId1 用户IDxyz44 作者表: 作者 AuthorName 分类: 分类ID
ClassificationName关系在2NF iff中
- 它在1NF,并且
- 每个非素属性都是 依赖于每一个人的整体 候选密钥(不只是部分 任何候选密钥)
稍后强> 然后,我将使用创建单独的表 属性:isbn、自动ID、自动名称、, 标题、分类和其他 具有以下属性的表:isbn、副本、, 用户ID 对。在“关系说话”中,您用这两个投影替换了原始关系R
- R1={isbn,复制, 用户ID}
- R2={isbn,作者, 作者名称、标题、分类}
- 3NF
- BCNF
- 4NF
- 5NF
以后强> 非正式地说,一个关系是3NF iff
- 它在2NF中,并且
- 不存在可传递的依赖项
- R1={isbn,复制, 用户ID}
- R2={isbn,作者, 作者名称、标题、分类}
- isbn->authorid,以及
- authorid->authorname
- R1={isbn,复制,用户ID}(5NF)
- R3={isbn,作者,标题,分类}
- R4={authorid,authorname}
我不认为标题和分类之间存在功能上的依赖关系 将您的AuthorName移动到另一个表中(第一次通过时没有看到:p)我已编辑了我的答案(可能需要一些格式化方面的帮助)@James根据什么规则创建了这些表?您从哪里获取ClassificationID和ClassificationName?请您清楚地说明每个表的起始位置。ClassificationId将是新分类表的代理键,ClassificationName将从第一个表中删除并放入此新表中。AuthorName将从第一个表中删除,并与新的代理键一起放入新的Author表中。有关2NF的规则,请参见@Catcall的答案。@JamesLove:代理键与规范化无关。@JamesLove:发明一个名为ClassificationID的新属性与规范化和2NF无关。@Catcall您能提供一个正确的答案(某种形式的表格)而不是问我一个问题吗?我觉得这一点帮助都没有。至于回答你的问题:对,对,,Yes@There我们无能为力:我可以提供桌子,但那对你的家庭作业没有帮助。那就是为你做家庭作业。哪些非素数属性仅依赖于{isbn}?在识别了这些属性之后,您应该如何处理它们?@CatCall Attributed仅依赖于isbn:authorID、authorName、title和classification。然后,我将创建一个单独的表,其中包含属性:isbn、autorID、autorName、title、Classification,以及另一个包含属性的表:isbn、copy、userID。你怎么说?@我们无能为力:我说,“干得好。”哪些非素数属性只依赖于{copy}?@Catcall其他属性只依赖于copy,看起来像是userID,但有点不理解。