精心設計的表的屬性

真正的關聯式資料庫必須超越將資料拋入幾個表並編寫一些 SQL 語句以將資料拉出來。
充其量只是設計糟糕的表結構會減慢查詢的執行速度,並使資料庫無法按預期執行。

不應將資料庫表視為另一個表; 它必須遵循一套規則才能被視為真正的關係。在學術上,它被稱為關係以進行區分。

關係表的五個規則是:

  1. 每個值都是原子的 ; 每行中每個欄位的值必須是單個值。
  2. 每個欄位包含具有相同資料型別的值。
  3. 每個欄位標題都有一個唯一的名稱。
  4. 表中的每一行必須至少有一個值,使其在表中的其他記錄中唯一。
  5. 行和列的順序沒有意義。

符合五條規則的表格:

ID 名稱 DOB 經理
1 弗雷德 1971 年 11 月 2 日 3
2 弗雷德 1971 年 11 月 2 日 3
3 起訴 1975 年 8 月 7 日 2
  • 規則 1:每個值都是原子的。IdNameDOBManager 只包含一個值。
  • 規則 2:Id 只包含整數,Name 包含文字(我們可以新增它的四個字元或更少的文字),DOB 包含有效型別的日期,Manager 包含整數(我們可以新增對應於管理器中的主鍵欄位)表)。
  • 規則 3:IdNameDOBManager 是表中唯一的標題名稱。
  • 規則 4:包含 Id 欄位可確保每條記錄與表格中的任何其他記錄不同。

設計糟糕的桌子:

ID 名稱 DOB 名稱
1 弗雷德 1971 年 11 月 2 日 3
1 弗雷德 1971 年 11 月 2 日 3
3 起訴 1975 年 7 月 18 日星期五 2,1
  • 規則 1:第二個名稱欄位包含兩個值 - 2 和 1。
  • 規則 2:DOB 欄位包含日期和文字。
  • 規則 3:有兩個名為’name’的欄位。
  • 規則 4:第一和第二條記錄完全相同。
  • 規則 5:此規則未被破壞。