學生課程管理系統

2021-03-03 20:40:29 字數 3367 閱讀 3216

1.需求說明

如果要實現乙個學校課程管理系統,在此學校課程管理系統中只涉及對學生、班級、課程、教師和參考書的管理,此系統要求能夠記錄學生的選修情況、教師的授課情況,以及學生、班級、課程、教師和參考書的基本情況。系統具體要求如下:

·一門課程可由多名教師講授。

·一名教師可以講授多門課程。

·一名學生可以選修多門課程。

·一門課程可被多名學生選修。

·乙個班級可以有多名學生。

·一名學生只能在乙個班級。

·一門課程可用多本參考書。

·一本參考書可以用於多門課程。

·一名教師可以用多本參考書。

·一本參考書可以被多名教師用。

·班幹部領導若干名學生。

·乙個學生僅被另外乙個學生直接領導。

資料庫中要記錄學生的選課情況、教師的授課情況、教師使用參考書情況、學生組成班級的情況,以及學生、班級、課程、教師和參考書的基本情況。除了對這些資料進行正常的維護之外,還需要產生如下報表:

·每學期開學時要生成學生選課情況表,內容包括學號、姓名、課程號、選課類別,其中選課類別分為必修、選修和重修。

·每學期結束時要生成學生選課成績表,內容包括學號、姓名、課程號、選課類別、平時成績、捲麵成績、總評成績。

·每學期開學時要生成學生組成班級情況表,內容包括學生、姓名、性別、年齡、班級編號、所屬專業號。

·可隨時生成教師授課表,內容包括教師號、教師名、課程名、授課類別、學時數、班數,授課類別分為主講、輔導和帶實驗。

·可隨時生成教師參考書使用表,內容包括參考書號,書名,教師號,教師名。

2.資料庫結構設計

2.1概念結構設計

現在對上述需求作進一步的分析,產生概念結構設計的e-r模型。採用自頂向下的設計方法。自頂向下設計的關鍵首先是確定系統的核心活動。

所謂核心活動就是系統中的其他活動都要圍繞這個活動展開或與此密切相關。確定了核心活動之後,系統就有了可擴充套件的餘地。對於這個教學管理系統,其核心活動是課程,學生與課程之間是通過學生選課發生聯絡的,教師與課程之間是通過教師授課發生聯絡的。

學生和課程之間是通過選課發生聯絡的,參考書和課程之間是通過講授發生聯絡的。學生和課程之間是通過選課發生聯絡的,學生和班級是通過組成發生聯絡的。至此,此系統包括的實體有:

·學生:用於描述一名學生的基本資訊,由學號來標識。

·班級:用來描述乙個班級的基本資訊,由班級號來標識。

·課程:用於描述一門課程的基本資訊,用課程號來標識。

·教師:用於描述一名教師的基本資訊,由教師號標識。

·參考書:用於描述一本參考書的基本資訊,由書號來標識。

由於一名學生可以選修多門課程,並且一門課程可以被多個學生選修。因此,學生和課程之間是多對多的聯絡。又由於一門課程可由多名教師講授,而且一名教師可以講授多門課程,因此,教師和課程之間也是多對多聯絡。

又由於乙個班級可以有多名學生,一名學生只能在乙個班級,因此班級和學生之間是一對多的聯絡。一門課程可用多本參考書,一本參考書可以用於多門課程,所以,課程和參考書之間是一對多的聯絡。又由於一名教師可以用多本參考書,一本參考書可以被多名教師用,所以,教師和參考書之間是多對多的聯絡。

如果實體的屬性比較多,在製作e-r模型時不一定要把所有的屬性都製作在e-r模型上,可以另外用文字說明,這樣也使得e-r模型簡明清晰,便於分析。

經過初步分析,可以得到此系統中各實體所包含的基本屬性如下:

學生:學號、姓名、性別、年齡

班級:班級編號、所屬專業系

課程:課程號、課程名、學分

教師:教師號、姓名、性別、年齡、職稱

參考書:書號、書名、內容提要、**

這五個實體的屬性用e-r圖表示,如圖(2)所示。

2.2邏輯結構設計

了基本的e-r模型就可以進行邏輯結構設計,也就是設計基本的關係模型。設計基本關係模式主要從e-r模型出發,將其直接轉換為關係模式。根據轉換規則,這個e-r模型轉換關係模式為:

·學生 (學號,姓名,性別,年齡 ) , 主碼為學號 。

·班級 (班級編號,所屬專業系 ) , 主碼為班級編號 。

·課程 (課程號,課程名,學分 ) , 主碼為課程號 。

·教師 (教師號,姓名,性別,年齡,職稱 ) ,主碼為教師號 。

·參考書 (書號,書名,內容提要,** ) , 主碼為書號 。

現在分析一下這些關係模式。由於在設計關係模式時是以現實存在的實體為依據,而且遵循乙個基本表只描述現實世界的乙個主題的原則,每個關係模式中的每個非主碼屬性都完全由主碼唯一確定,因此上訴所有這些關係模式都是第三正規化的關係模型。

在設計好關係並確定好每個關係模式的主碼後,應該看一下這些關係模式之間的關聯關係,即確定關係模式的外碼。實際上只需看e-r模型中的聯絡即可。

「組成」關係中的「班號」與「班級」關係中的主碼「班號」是同語義,且取值域相同,組成關係中「學號」與「學生」中的主碼學號是同語義且取值域相同。因此應在組成關係中新增「班號」和「學號」兩個外碼,她們分別引用班級關係中的「班號」和「學生」中的學號,「選課」關係中的「學號」與「學生」關係中的主碼「學號」是同詞義且取值域相同,「選課」關係中的「課程號」與「課程」中的主碼「課程號」是同義詞且取值域相同。因此,應在「選課」關係中新增「學號」和「課程號」兩個外碼,它們分別引用「學生」關係中的「學號」和「課程」中的「課程號」。

講授關係中的「課程號」與課程關係中的主碼「課程號」是同語義且取值域相同。講授關係中的「教師號」與教師中的「教師號」是同語義,且取值域相同,因此應在講授關係中新增「課程號」和「教師號」兩個外碼,它們分別引用課程關係中的「課程號」,和教師關係中的「教師號」。講授關係中的「課程號」與課程關係中的主碼「課程號」是同語義且取值域相同,講授過程中的「書號」與參考書中的主碼「書號」是同語義且取值域相同,因此,應在講授關係中新增「課程號」和「書號」兩個外碼,它們分別引用課程關係中的「課程號」和參考書中的「書號」。

最後確定表中各屬性的詳細資訊,包括資料型別和長度等。

教師號:普通編碼定長字串型,10位元組,主碼。

姓名:普通編碼定長字串型,10位元組,非空。

性別:普通編碼定長字串型,7位元組,非空。

年齡:普通編碼定長字串型,整形。

職稱:普通編碼定長字串型,6位元組,取值範圍為。

5. 參考書表

書號:普通編碼定長字串型,10位元組,主碼。

書名:普通編碼定長字串型,10位元組,非空。

內容提要:普通編碼定長字串型。

**:普通編碼定長字串型。

有了資料庫的基本表之後,需看一下這些基本表的內容能否滿足產生報表的需要。在資料庫應用系統中,使用者需要產生大量的報表,而報表的內容來自資料庫中的基本表,因此,在設計好資料庫的基本表之後,要看一下這些基本表的內容是否全部包含了要產生的報表的內容。如果滿足,則說明所設計的基本表在滿足報表方面是完善的;若不能滿足,則要看一下報表中的哪些項沒有被包含在基本表中,並將他們加到合適的基本表中。

當然,在基本表中增加了新屬性後,要判斷被修改的表是否還滿足第三正規化的要求,如果不滿足,還要進行關係的規範化。

學生課程管理系統

數學與計算機學院 課程設計說明書 課程名稱 資料庫課程設計 課程 8422561 題目 學生課程資料庫應用系統 年級 專業 班 2xx級信科3班 學生姓名 惺惺惜惺惺x 學號 31200807 x 開始時間 2011 年 5 月 23 日 完成時間 2011 年 6 月 7 日 課程設計成績 指導教...

學生考勤管理系統課程設計

高階語言程式設計 課程設計報告 計算機與資訊工程系 2013年6月30日 目錄1設計內容及要求3 1.1設計內容3 1.2設計任務及具體要求3 2概要設計4 2.1該系統的功能簡介4 2.2 總體程式框圖4 2.3各個模組之間的主要關係5 3 設計過程或程式 5 3.1各個模組的程式流程圖及執行介面...

課程管理系統

一 概述 1.1 開發背景 現如今學校課程越來越多,必然就會有大量的課程資訊需要處理。如果靠人力來完成,這將會變成一項非常繁瑣 複雜的工作,而且還會出現很多意想不到的錯誤,給管理這些資料帶來了很大的不便,也越來越不適合學校發展的需要。課程管理系統是乙個龐大而複雜的系統,它包括對課程資料的管理,對學生...