【问题标题】:denormalization tables to 1NF非规范化表到 1NF
【发布时间】:2023-03-18 10:09:02
【问题描述】:

如何将其反规范化为 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|
--------------------

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

【问题讨论】:

标签: database database-design denormalization


【解决方案1】:

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

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

【讨论】:

    猜你喜欢
    • 2016-08-17
    • 2018-03-30
    • 2016-01-06
    • 1970-01-01
    • 2014-12-14
    • 1970-01-01
    • 1970-01-01
    • 2012-12-31
    • 1970-01-01
    相关资源
    最近更新 更多