2011-10-26 54 views
0

我有一个XML文档的集合。我需要将这些文档中的元数据和数据存储在MySQL数据库中。我已经创建了3个表来存储分贝的信息。数据库规范化(1到很多)

1-文件(的docId(PK),DOCNAME,明文,日期,作者)
2-元素(elementId(PK),的docId(FK),的ElementName,elementValue)
3-属性(属性Id(PK ),elementId(fk),attributeName,attributeValue)

这意味着什么..有很多xml文档。每个XML文件有很多元素,每个元素可以有很多属性..我不知道如果我没有这个步骤妥善?我的意思是数据库规范化..这些表是在第三范式吗?

+1

非常短的无函数依赖回答:是 – knittl

+1

需要思考的问题:数据库模式如何处理嵌套的XML元素?或者你确定你的文档没有嵌套元素? –

+0

@ Jan-Henk:恩......好点..我没有想到这一点。我确实有嵌套的元素,这就解释了为什么我只能从元素表中获取最后一个elementId值作为属性表中的外键值...并且我在想我的db设计有什么问题..:D ...谢谢为了指出这一点..任何建议? – user1014923

回答

0

是的,这些表格根据3NF规范化。有,在短,三个简单的规则:

  • 没有重复的元件或元件组
  • 没有局部依赖于级联密钥
  • 上非键属性