数据库结构中相同类型的零个,一个或多个条目

时间:2012-07-30 20:37:27

标签: html xml database-design

我正在为我的问题寻找概念解决方案,并建议使用最合适的技术。

我有一个由一个表(id,name,...)组成的数据库。在项目的功能中,需要添加注释。在预览对象时,将为所有注释提供空间。 我应该创建另一个id为主键的表和另一个名为comment的列吗? 如果是这样,有两个或多个描述相同产品的评论(并且共享相同的ID)是错误的 我应该更好地使用一些XML文件并尝试构建类似的东西:

   <allobjects>
         <object id=1>
           <comment>blaah blah </comment>
           <comment>something</comment>
         <object id=2>
         </object>
   </allobjects>  

然后遍历xml结构并检索注释?

2 个答案:

答案 0 :(得分:2)

我不会把它放在xml字符串中然后解析它。如果产品只有一条评论,那么将另一列添加到产品表可能是一种很好的方法。如果您计划支持产品的多个注释,那么将它存储在单独的表中会更有意义。同样,如果不是所有产品都有评论,最好添加另一个表。最灵活的解决方案是创建新表。将它存储在XML文档中似乎并不太实际,特别是因为与直接从表中检索它相比,你将不得不解析相当慢(呃)的xml。

答案 1 :(得分:0)

使用您提供的XML与使用不同的表存储注释(一对多关系)是一回事,我在DB方法中没有看到任何错误。

根据您的使用语言(C#,JAVA,PHP),使用XML文件会更容易/更难,并且需要更多经验。 另一方面,使用关系数据库和SQL是你所说的所需要的“小蛋糕”。