首頁 > 資料庫 > mysql教程 > 註釋的子類型或單獨的表:哪種資料庫設計最好?

註釋的子類型或單獨的表:哪種資料庫設計最好?

Susan Sarandon
發布: 2025-01-05 14:55:42
原創
585 人瀏覽過

Sub-Type or Separate Tables for Notes:  Which Database Design is Best?

在資料庫設計中使用子類型或單獨的表進行註解

設計資料庫時,出現一個常見問題:是否應該子類型是在單一表中使用,還是應該為不同類型的資料建立單獨的表?在本例中,我們有一個包含三個主要表的資料庫:BOOKS、ARTICLES 和 NOTES。最初,使用單一NOTES表來儲存書籍和文章的註釋。然而,人們對該設計的規範化和效率提出了擔憂。

一個潛在的替代方法是利用五個表格:BOOKS、ARTICLES、NOTES、BOOK_NOTES 和 ARTICLE_NOTES。這種結構允許單獨儲存書籍註釋和文章註釋,並在註釋表中使用更簡單的列定義。

使用子類型還是單獨的表之間的決定取決於資料的具體性質。當子類型具有唯一且不同的列時,通常會使用子類型。然而,在這種情況下,BOOK_NOTES 和 ARTICLE_NOTES 表在結構上沒有顯著差異。

更最佳化的方法可能涉及建立一個超類型表 Publication,其中 Book 和 Article 作為子類型。這將允許單一註釋表具有發布的外鍵。由於 Publication 的主鍵與 Book(或 Article)的主鍵相同,因此它有利於 Publication、Book 或 Article 的高效連接。此設計還提供了添加新出版物類型(例如雜誌)的靈活性,而無需修改 NOTES 表。

例如,以下表格架構舉例說明了這種方法:

TABLE Publication (
      ID (PK)
登入後複製

以上是註釋的子類型或單獨的表:哪種資料庫設計最好?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板