- MySQL數據庫應用與維護項目式教程(微課版)
- 舒蕾 劉均主編
- 1394字
- 2023-11-16 18:21:56
任務1.3.1 設計學生成績管理系統數據庫概念數據模型
微課1-4

設計學生成績管理系統數據庫概念數據模型
概念數據模型是在了解用戶的需求、用戶的業務領域及流程后,經過分析和總結,提煉出來的用以描述用戶業務需求的一些概念性內容。現以學生成績管理系統數據庫為例,講解概念數據模型的設計過程。
1.需求分析
在進行概念數據模型設計前,需要充分了解與分析用戶需求。
(1)繪制組織結構圖。組織結構是用戶業務流程與信息的載體,能為設計人員理解企業的業務、確定系統范圍提供幫助。學生成績管理系統數據庫的組織結構圖如圖1-13所示。
(2)繪制業務用例圖。收集資料,并對資料進行分析、整理,繪制出學生成績管理系統數據庫業務用例圖,如圖1-14所示。

圖1-13 學生成績管理系統數據庫的組織結構圖

圖1-14 學生成績管理系統數據庫業務用例圖
(3)了解功能需求。對學生成績管理系統數據庫中涉及的各部門進行調研,得到學生成績管理系統數據庫的功能需求如下。
① 學籍管理功能:用于添加、修改、刪除學生信息。
② 教務管理功能:包含成績管理和課程管理兩個子功能,分別用于添加、修改、刪除成績和課程。
(4)生成數據字典。針對學生成績管理系統數據庫的功能需求,對學生成績管理系統數據庫中涉及的各部門業務流程和數據流程進行分析,得到的數據項簡述如下。
① 學生信息:學號、姓名、專業、性別、出生日期、總學分、照片、備注。
② 課程信息:課程號、課程名稱、開課學期、學時、學分。
③ 選課信息:學號、課程號、成績。
2.數據庫概念設計
根據學生成績管理系統數據庫的需求分析,進行概念設計。
(1)定義實體。實體集合的成員都有一個共同的特征和屬性集,可以從收集的源材料——基本數據資料表中直接或間接標識出大部分實體。根據源材料名字表中表示物的術語及以“代碼”結尾的術語,如客戶代碼、代理商代碼、產品代碼等,將其名詞部分代表的實體標識出來,從而初步找出潛在的實體,形成實體表。
根據學生成績管理系統數據庫的需求分析,可知學生成績管理系統數據庫中存在學生、課程兩個實體。
(2)定義聯系。根據實際的業務需求、規則和實際情況確定實體聯系、聯系名和說明,確定聯系類型,即一對一、一對多或者多對多。
根據需求分析可知,學生和課程之間存在選課的聯系。一名學生可以選修多門課程,一門課程可以被多名學生選修,那么學生和課程之間的選課聯系是多對多聯系,并且派生出成績作為聯系的屬性。
(3)定義主鍵。為已定義的實體標識候選鍵,以便唯一識別每個實體的實例,再從候選鍵中確定主鍵。為了確定主鍵和聯系的有效性,需要利用非空規則和非多值規則,即一個實體實例的主鍵不能是空值,也不能在同一個時刻有一個以上的值。
根據需求分析,找出實體學生的主鍵為學號,實體課程的主鍵為課程號。
(4)定義屬性。從源數據表中抽取說明性的名詞生成屬性表,確定屬性的所有者,定義非主鍵屬性,檢查屬性的非空及非多值規則。此外,還要檢查完全依賴函數規則和非傳遞依賴規則,保證一個非主鍵屬性必須依賴于整個主鍵且只依賴于主鍵。
根據需求分析的數據字典可以得到實體學生有學號、姓名、性別、出生日期、專業等屬性,實體課程有課程號、課程名稱、學時和學分等屬性。
(5)定義其他對象和規則。定義屬性的數據類型、長度、精度、非空、默認值和約束規則等。定義觸發器、存儲過程、視圖、角色、同義詞和序列等對象信息。
(6)E-R模型設計。根據以上分析,學生成績管理系統數據庫的概念設計E-R模型如圖1-9所示。