07 表之間的關係 資料庫設計

2021-10-24 09:35:16 字數 1032 閱讀 5386

2、資料庫設計

正規化:好的資料庫設計對資料的儲存效能和後期的程式開發,都會產生重要的影響。建立科學的,規範的資料庫就需要滿足一些規則來優化資料的設計和儲存,這些規則就成為正規化。

三大正規化:目前資料庫有六種正規化:第一正規化(1nf)、第二正規化(2nf)、第三正規化(3nf)、巴斯-科德正規化(bcnf)、第四正規化(4nf)、第五正規化(5nf,又稱完美正規化)。

資料庫表的每一列都是不可分割的原子資料項,不能是集合、陣列等非原子資料項。即表中的某個列有多個值時,必須拆分為不同的列。簡而言之,第一正規化每一列不可再分,成為原子性。

在滿足第一正規化的前提下,表中的每乙個欄位都完全依賴於主鍵。所謂完全依賴時指不能存在僅依賴主鍵一部分的列。簡而言之,第二正規化就是在第一正規化的基礎上所有列完全依賴於主鍵。 當存在乙個復合主鍵包含多個主鍵的時候,才會發生不符合第二正規化的情況。比如有乙個主鍵有兩個列,不能存在這樣的屬性,它只能依賴於其中一列,這就不符合第二正規化。

第二正規化的特點:(1)一張表只描述一件事情 (2)表中的每一列都完全依賴於主鍵

在滿足第二正規化的前提下,表中的每一列都直接依賴於主鍵,而不是通過其他的列來間接依賴於主鍵。簡而言之,第三正規化就是所有列不依賴於其他非主鍵列,也就是在滿族2nf的基礎上,任何非主列不得傳遞依賴於主鍵。 所謂傳遞依賴,指的是如果存在"a——b——c"的決定關係,則c傳遞依賴於a。因此,滿足第三正規化的資料庫應該不存在如下依賴關係:主鍵列——非主鍵列x——非主鍵列y

關聯式資料庫 定義資料庫表之間的關係

關係型別 你和家人有很多關係。例如,你和你母親是親戚。你只有乙個母親,但她可能有幾個孩子。你和你的兄弟姐妹是親戚 你可能有很多兄弟姐妹,當然,他們也會有很多兄弟姐妹。如果你結婚了,你和你的配偶都有配偶 彼此 但一次只有乙個。資料庫關係非常相似,因為它們是表之間的關聯。關係有三種型別 建立關係 當您開...

sqlite 表與表之間的關係 關聯式資料庫概述

為什麼需要資料庫?因為應用程式需要儲存使用者的資料,比如word需要把使用者文件儲存起來,以便下次繼續編輯或者拷貝到另一台電腦。要儲存使用者的資料,乙個最簡單的方法是把使用者資料寫入檔案。例如,要儲存乙個班級所有學生的資訊,可以向檔案中寫入乙個csv檔案 id,name,gender,score1,...

mysql資料庫表關係 資料庫 表關係

上節回顧 1.建表語法 注意點 2.資料型別 今日內容 1.表之間的關係 多對一,多對多,一對一 2.複製表 分表 為什麼要分表?乙個表中 要儲存個人資訊又要儲存部門資訊 會導致大量的資料冗餘 所有資料存放在同乙個表中 將導致以下幾個問題 1.浪費空間 不致命 2.結構混亂 3.修改資料時 如果有一...