您好,登錄后才能下訂單哦!
本篇內容介紹了“關系型數據庫的設計規則有哪些”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
E-R(Entity-relationship,實體-聯系)模型中有三個主要概念是:實體集、屬性、聯系集。
一個實體集(class)對應于數據庫中的一個表,一個實體(instance)則對應數據庫表中的一行,也稱一條記錄。一個屬性對應于數據庫表中的一列(column),也稱一個字段。
ORM思想(Object Relational Mapping)體現:
數據庫表 ? Java或Python的一個類
表中的一條數據 ? 類中的一個對象(或實體)
表中的一個類 ? 類中的一個字段、屬性(field)
表與表之間的數據記錄有關系(relationship)。現實世界中的各種實體以及實體之間的各種聯系均用關系模型來表示。表關系的四種:
在實際的開發中應用不多,因為一對一可以創建成一張表。
舉例:設計學生表
:學號、姓名、手機號碼、班級、系別、身份證號碼、家庭住址、籍貫、緊急聯系人、…
拆為兩個表:兩個表的記錄是一一對應關系。
基礎信息表
(常用信息):學號、姓名、手機號碼、班級、系別檔案信息表
(不常用信息):學號、身份證號碼、家庭住址、籍貫、緊急聯系人、…兩種建表原則: 外鍵唯一:主表的主鍵和從表的外鍵(唯一),形成主外鍵關系,外鍵唯一。外鍵是主鍵:主表的主鍵和從表的主鍵,形成主外鍵關系。
常見實例場景:客戶表和訂單表
,分類表和商品表
,部門表和員工表
。
舉例: 員工表:編號、姓名、…、所屬部門部門表:編號、名稱、簡介 一對多建表原則:在從表(多方)創建一個字段,字段作為外鍵指向主表(一方)的主鍵
要表示多對多關系,必須創建第三個表,該表通常稱為聯接表
,它將多對多關系劃分為兩個一對多關系。將這兩個表的主鍵都插入到第三個表中。
舉例1:學生-課程
學生信息表
:一行代表一個學生的信息(學號、姓名、手機號碼、班級、系別…)
課程信息表
:一行代表一個課程的信息(課程編號、授課老師、簡介…)
選課信息表
:一個學生可以選多門課,一門課可以被多個學生選擇
學號 課程編號 1 1001 2 1001 1 1002
舉例2:產品-訂單
“訂單”表和“產品”表有一種多對多的關系,這種關系是通過與“訂單明細”表建立兩個一對多關系來定義的。一個訂單可以有多個產品,每個產品可以出現在多個訂單中。
產品表
:“產品”表中的每條記錄表示一個產品。訂單表
:“訂單”表中的每條記錄表示一個訂單。訂單明細表
:每個產品可以與“訂單”表中的多條記錄對應,即出現在多個訂單中。一個訂單可以與“產品”表中的多條記錄對應,即包含多個產品。
舉例3:用戶-角色
多對多關系建表原則:需要創建第三張表,中間表中至少兩個字段,這兩個字段分別作為外鍵指向各自一方的主鍵。
“關系型數據庫的設計規則有哪些”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。