擴(kuò)招教學(xué)管理系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)與實(shí)現(xiàn)
時(shí)間:2022-05-25 05:20:47
導(dǎo)語(yǔ):擴(kuò)招教學(xué)管理系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)與實(shí)現(xiàn)一文來(lái)源于網(wǎng)友上傳,不代表本站觀點(diǎn),若需要原創(chuàng)文章可咨詢客服老師,歡迎參考。
摘要:本文以高職擴(kuò)招的教學(xué)管理流程實(shí)現(xiàn)為基礎(chǔ),基于系統(tǒng)需求,實(shí)現(xiàn)系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì),通過(guò)約束條件和索引對(duì)數(shù)據(jù)庫(kù)進(jìn)行了優(yōu)化。
關(guān)鍵詞:高職擴(kuò)招;數(shù)據(jù)庫(kù)設(shè)計(jì);MySQL
1前言
高職擴(kuò)招是國(guó)家一項(xiàng)重大的教育改革工程,擴(kuò)招生源在社會(huì)背景、年齡結(jié)構(gòu)、實(shí)踐閱歷等方面具有多元化,文化基礎(chǔ)和學(xué)習(xí)能力水平參差不齊,求學(xué)動(dòng)機(jī)和接受教育教學(xué)方式差異比較明顯。由于高職院校的擴(kuò)招學(xué)生在日常管理和教育教學(xué)過(guò)程中,與普通在校生存在一定差距,所以這為職業(yè)院校帶來(lái)了一定的挑戰(zhàn)。高職院校在調(diào)整人才培養(yǎng)方案、實(shí)施線上線下混合教學(xué)、加強(qiáng)過(guò)程管控的同時(shí),利用計(jì)算機(jī)應(yīng)用技術(shù)和網(wǎng)絡(luò)技術(shù)搭建了符合自己管理風(fēng)格的擴(kuò)招教學(xué)管理系統(tǒng),服務(wù)于廣大擴(kuò)招師生,從而提高了學(xué)院的管理水平和效率,有效做到擴(kuò)招人才培養(yǎng)要求的“標(biāo)準(zhǔn)不降、模式多元、學(xué)制靈活”。高職擴(kuò)招教學(xué)管理系統(tǒng)以擴(kuò)招學(xué)生和教師為主要服務(wù)對(duì)象,以教育教學(xué)為主要內(nèi)容。在實(shí)施系統(tǒng)開(kāi)發(fā)之前,設(shè)計(jì)一個(gè)全面、準(zhǔn)確、嚴(yán)謹(jǐn)、高效的數(shù)據(jù)庫(kù)系統(tǒng),可以極大地提高應(yīng)用系統(tǒng)的有效性和健壯性。目前常見(jiàn)的數(shù)據(jù)庫(kù)系統(tǒng)有Oracle、MicrosoftSQLServer、MySQL、access等。由于本項(xiàng)目開(kāi)發(fā)的高職擴(kuò)招教學(xué)管理系統(tǒng)采用PHP語(yǔ)言,與MySQL數(shù)據(jù)庫(kù)銜接完美,且MySQL具有體積小、速度快、成本低、代碼開(kāi)源等優(yōu)點(diǎn),因此本系統(tǒng)采用MySQL數(shù)據(jù)庫(kù)。
2數(shù)據(jù)庫(kù)設(shè)計(jì)
數(shù)據(jù)庫(kù)的設(shè)計(jì)既要滿足用戶的需求,又要與給定的應(yīng)用環(huán)境密切相關(guān),因此需要通過(guò)系統(tǒng)化、規(guī)劃化的方法進(jìn)行設(shè)計(jì)。同時(shí)數(shù)據(jù)庫(kù)的設(shè)計(jì)還具有反復(fù)性、試探性和分步進(jìn)行的特點(diǎn)。通過(guò)用戶需求分析,得到本系統(tǒng),主要完成擴(kuò)招學(xué)生的教學(xué)管理,包括學(xué)生的基本信息管理,每學(xué)期的教學(xué)計(jì)劃管理、教師授課安排、課表生成、考試安排、成績(jī)管理等內(nèi)容。
2.1系統(tǒng)E-R模型圖設(shè)計(jì)
E-R模型,全稱為實(shí)體關(guān)系模型,是數(shù)據(jù)庫(kù)概念模型設(shè)計(jì)中最常見(jiàn)的描述工具,它提供了表示實(shí)體類型、屬性和聯(lián)系的方法。根據(jù)用戶需求和系統(tǒng)功能,我們將本系統(tǒng)大致劃分成以下幾個(gè)模塊,主要包括專業(yè)管理、班級(jí)管理、學(xué)生管理、教師管理、專業(yè)計(jì)劃管理、教學(xué)任務(wù)管理、課表管理、考試管理、評(píng)價(jià)管理等,每個(gè)模塊包含一個(gè)實(shí)體和若干屬性。根據(jù)實(shí)體之間的聯(lián)系得到本系統(tǒng)總的E-R模型(如圖1所示)。圖1中的矩形框表示實(shí)體,菱形框表示實(shí)體之間的聯(lián)系。一般來(lái)說(shuō),兩個(gè)實(shí)體之間的聯(lián)系可以分為三種:對(duì)于一對(duì)一聯(lián)系,要在兩個(gè)實(shí)體連線方向各寫1,比如教學(xué)任務(wù)和專業(yè)計(jì)劃、教材之間就屬于一對(duì)一的關(guān)系,一門課程只能被講授學(xué)習(xí)一次,一門課程只對(duì)應(yīng)一本教材;對(duì)于一對(duì)多聯(lián)系,要在一的一方寫1,多的一方寫n,比如一個(gè)學(xué)院開(kāi)設(shè)了多個(gè)專業(yè),一個(gè)專業(yè)下面有多個(gè)班級(jí),一個(gè)班級(jí)里有多名同學(xué);對(duì)于多對(duì)多關(guān)系,則要在兩個(gè)實(shí)體連線方向各寫m和n,比如一名學(xué)生可以選修了多門課程,一門課程可以被多名學(xué)生選修。
2.2E-R模型圖轉(zhuǎn)換為關(guān)系模型
根據(jù)以上分析,將E-R模型圖轉(zhuǎn)換為關(guān)系模型。在關(guān)系模型中,標(biāo)有下劃線“_”的屬性為主鍵,斜體字的屬性為外鍵。以班級(jí)表為例,其關(guān)系模型如下:班級(jí)(編號(hào)、班級(jí)代碼、班級(jí)名稱、所在系部、所屬專業(yè)、招生年份、班級(jí)人數(shù)、班主任編號(hào))。
3數(shù)據(jù)庫(kù)的實(shí)施與優(yōu)化
基于以上數(shù)據(jù)庫(kù)的設(shè)計(jì),我們?cè)贛ySQL中進(jìn)行數(shù)據(jù)庫(kù)的實(shí)施,包括基本數(shù)據(jù)表的創(chuàng)建、索引表的建立、添加外鍵約束等。3.1數(shù)據(jù)表的創(chuàng)建我們?cè)贛ySQL數(shù)據(jù)庫(kù)中首先創(chuàng)建數(shù)據(jù)庫(kù),然后創(chuàng)建了12個(gè)數(shù)據(jù)表。這些數(shù)據(jù)表按照字母順序排序后,分別是:教材表、學(xué)院表、班級(jí)表、教學(xué)評(píng)價(jià)表、考試安排表、成績(jī)表、學(xué)生表、教學(xué)任務(wù)表、課表、專業(yè)表、專業(yè)計(jì)劃表、教師表(如圖2所示)。以專業(yè)計(jì)劃表為例,利用“createtable”語(yǔ)句完成該表的創(chuàng)建,具體如圖3所示。語(yǔ)句中對(duì)每一個(gè)字段的字段名、數(shù)據(jù)類型、默認(rèn)值、字段描述等都進(jìn)行了明確的定義。
3.2約束條件
數(shù)據(jù)庫(kù)的約束條件就是指限制表中的數(shù)據(jù),保證添加到數(shù)據(jù)表中的數(shù)據(jù)準(zhǔn)確和可靠性,凡是不符合約束的數(shù)據(jù),插入時(shí)就會(huì)失敗。約束條件在創(chuàng)建表時(shí)可以使用,也可以修改表的時(shí)候添加約束條件。約束條件可分為:主鍵約束、外鍵約束、非空約束、默認(rèn)約束、唯一約束等。下面以圖4所示的擴(kuò)招學(xué)生表為例進(jìn)行討論:主鍵約束(primarykey)通常是一個(gè)表必須指定一個(gè)主鍵,這個(gè)主鍵也是唯一的、非空的,一般也是自動(dòng)增加的。如本表中的id字段,其key屬性為“PRI”,Extra屬性為“auto_increment”。外鍵約束(foreignkey)用于限制兩個(gè)表的關(guān)系,保證從表該字段的值來(lái)自于主表相關(guān)聯(lián)的字段的值。如本表的id_grade(班級(jí)編號(hào))字段來(lái)自于班級(jí)表,可以通過(guò)以下語(yǔ)句添加外鍵約束,如圖5所示。非空約束(notnull)是保證字段的值不能為空,如圖4中的id(序號(hào))、stu_no(學(xué)號(hào))、stu_name(姓名)、stu_IDnumber(身份證號(hào))等字段都是非空約束。默認(rèn)約束(default)是保證字段總會(huì)有值,當(dāng)沒(méi)有插入值時(shí)自動(dòng)為默認(rèn)值,如圖4中的year_enroll(入學(xué)年份)字段默認(rèn)為“2021”。唯一約束(unique)是保證每一行數(shù)據(jù)的唯一性,防止用戶輸入重復(fù)數(shù)據(jù)。如圖4中的stu_no(學(xué)號(hào))、stu_IDnumber(身份證號(hào))兩個(gè)字段不允許數(shù)據(jù)重復(fù)。
3.3索引
為了提高數(shù)據(jù)表的訪問(wèn)速度,我們?cè)跀?shù)據(jù)表中添加了索引,索引是對(duì)數(shù)據(jù)表中一個(gè)或多個(gè)列的值進(jìn)行排序的結(jié)構(gòu)。索引又分為普通索引、唯一性索引、全文索引、單列索引、多列索引和空間索引等。我們?cè)诿繌埍碇卸继砑恿俗詣?dòng)增加的id字段,作為該表的主鍵索引,當(dāng)在查詢中使用主鍵索引時(shí),它可以實(shí)現(xiàn)對(duì)數(shù)據(jù)的快速訪問(wèn)。另外,在Web應(yīng)用系統(tǒng)對(duì)數(shù)據(jù)進(jìn)行操作時(shí),需要將學(xué)院表、專業(yè)表、教師表等按照日常工作約定的方式進(jìn)行排序,因此這幾個(gè)表中都增加了“排列序號(hào)”字段,并對(duì)將該字段設(shè)置為普通索引。
3.4冗余數(shù)據(jù)
在數(shù)據(jù)庫(kù)的設(shè)計(jì)中,根據(jù)第三范式規(guī)定,數(shù)據(jù)庫(kù)表中不包含已在其它表中已包含的非主關(guān)鍵字信息。因此當(dāng)嚴(yán)格按照第三范式設(shè)計(jì)時(shí),教學(xué)任務(wù)(課程)表中只需包含課程編號(hào)、教師編號(hào)即可。但在Web應(yīng)用系統(tǒng)對(duì)數(shù)據(jù)處理時(shí),經(jīng)常需要在多個(gè)數(shù)據(jù)庫(kù)之間共享或共同處理數(shù)據(jù),比如在教學(xué)任務(wù)的處理中,每次都需要顯示教師姓名和工號(hào)、課程名稱和課程代碼,偶爾也會(huì)要求查詢?cè)撜n程的學(xué)分、學(xué)時(shí)、教材等信息。因此,在實(shí)際的數(shù)據(jù)庫(kù)實(shí)現(xiàn)過(guò)程中,也允許一些冗余數(shù)據(jù)的存在,從而在犧牲存儲(chǔ)空間的情況下,提高了程序運(yùn)行的時(shí)間和數(shù)據(jù)處理的效率。當(dāng)需要同時(shí)調(diào)用其他數(shù)據(jù)表中的數(shù)據(jù)時(shí),可以采用聯(lián)合查詢技術(shù)實(shí)現(xiàn)。
4結(jié)束語(yǔ)
本文實(shí)現(xiàn)了高職擴(kuò)招教學(xué)管理系統(tǒng)中數(shù)據(jù)庫(kù)的設(shè)計(jì),通過(guò)需求分析、概念結(jié)構(gòu)設(shè)計(jì)、邏輯結(jié)構(gòu)設(shè)計(jì)明確了系統(tǒng)需求,運(yùn)用mysql實(shí)現(xiàn)了數(shù)據(jù)庫(kù)的創(chuàng)建與優(yōu)化。數(shù)據(jù)庫(kù)設(shè)計(jì)是Web應(yīng)用系統(tǒng)開(kāi)發(fā)的基礎(chǔ)和骨架,良好的數(shù)據(jù)庫(kù)結(jié)構(gòu)為Web應(yīng)用系統(tǒng)的開(kāi)發(fā)奠定堅(jiān)實(shí)的基礎(chǔ)。下一步將利用PHP語(yǔ)言實(shí)現(xiàn)系統(tǒng)的功能實(shí)現(xiàn)和數(shù)據(jù)交互處理,比如通過(guò)用戶交互和算法實(shí)現(xiàn)課表、考試安排、教學(xué)評(píng)價(jià)信息等。最后利用HTML+CSS+javascript實(shí)現(xiàn)網(wǎng)頁(yè)的顯示和瀏覽,完成本系統(tǒng)的開(kāi)發(fā),并投入實(shí)用。高職擴(kuò)招是順應(yīng)社會(huì)發(fā)展的教育策略,是國(guó)家的教育大計(jì),此系統(tǒng)將根據(jù)高職擴(kuò)招靈活學(xué)制的特點(diǎn)定制開(kāi)發(fā),并克服了學(xué)院現(xiàn)有教學(xué)管理系統(tǒng)使用上的不便,服務(wù)于學(xué)院擴(kuò)招專業(yè)教學(xué)管理,使信息化建設(shè)和運(yùn)用水平得到提高。
參考文獻(xiàn)
[1]賀適.軟件開(kāi)發(fā)中數(shù)據(jù)庫(kù)設(shè)計(jì)理論實(shí)踐研究[J].電子測(cè)試,2020,No.437(08):67-68.
[2]羅全珍,李迎國(guó),趙琦.基于MVC模式的獲獎(jiǎng)管理系統(tǒng)設(shè)計(jì)[J].電子技術(shù)與軟件工程,2020(7).
[3]計(jì)算機(jī)軟件數(shù)據(jù)庫(kù)設(shè)計(jì)應(yīng)用探析[J].科學(xué)大眾,2020(2):41-41.
[4]姜曉琴.網(wǎng)上選課系統(tǒng)的數(shù)據(jù)庫(kù)設(shè)計(jì)與實(shí)現(xiàn)[J].數(shù)碼世界,2020(1).
[5]梁利亭.計(jì)算機(jī)軟件數(shù)據(jù)庫(kù)設(shè)計(jì)原則探討[J].信息與電腦,2020,032(002):116-118.
作者:羅全珍 李彩霞 單位:甘肅交通職業(yè)技術(shù)學(xué)院