0

如何将其反规范化为 1NF。

    --------------------------------------------------
    |         |         |              |             |
    |         V         V              V             V
-----------------------------------------------------------
|post_id|post_title|post_text|post_submited_time|user_name|
-----------------------------------------------------------


    ------------------------------------------------
    |            |                 |               |           
    |            V                 V               V           
---------------------------------------------------------
|comment_id|comment_text|comment_submited_time|user_name|
---------------------------------------------------------

   -----------
   |         |
   |         V
--------------------
|post_id|comment_id|
--------------------

我想以一种正常形式制作一张表格,当我规范化该结果时,表格是向上的。

4

1 回答 1

1

这取决于您使用的数据库,因为像 postgresql 这样的数据库可以将数组或复杂数据对象作为其列中的数据类型。它通常是有代价的:你不能索引也不能组织这些数据。然后,例如可能很难找出用户对哪些帖子发表了哪些评论。如果您查看自己的 Stackoverflow.com 个人资料,那么您会看到将这些信息分开的好处。

但是,您可以删除一张桌子。如果您在评论表中为 post_id 创建一个外键,那么您的设计中会少一个表,但您可以根据需要使用索引。

于 2013-05-18T19:36:48.793 回答