林荷清
校園疫情防控日報系統(tǒng)的數(shù)據(jù)庫設(shè)計
林荷清
(福建經(jīng)濟學(xué)校,福建 福州 350003)
數(shù)據(jù)庫是一個系統(tǒng)不可或缺的構(gòu)成部分,其設(shè)計的效果關(guān)系到系統(tǒng)的正常運行。通過實地調(diào)查和對學(xué)校的疫情防控流程開展充分的調(diào)研,分析系統(tǒng)的功能需求,結(jié)合SQL Server 2008開發(fā)平臺,對校園疫情防控日報系統(tǒng)的數(shù)據(jù)庫設(shè)計和實施部分進行研究,了解數(shù)據(jù)庫設(shè)計中各個環(huán)節(jié)的實施過程,并設(shè)計出科學(xué)、合理的數(shù)據(jù)庫,為后期系統(tǒng)的開發(fā)提供數(shù)據(jù)支撐。
校園疫情防控;SQL Server;數(shù)據(jù)庫;設(shè)計
2019年12月突如其來的新冠肺炎疫情由于其傳播速度快、防控難度大,給人類造成的危害一直持續(xù)至今,全球都面臨著疫情帶來的嚴(yán)峻挑戰(zhàn)[1]。面對新冠肺炎疫情,我國人民在政府的領(lǐng)導(dǎo)下,舉全國之力有序地推進各項疫情防控舉措,各個單位都實行嚴(yán)格的人員日常管控。校園作為一個人口密度高的重要場所,為守護師生的安全健康,維護校園的穩(wěn)定,上級主管部門要求學(xué)校在疫情期間每日報告疫情相關(guān)數(shù)據(jù)。為了切實地做好疫情防控常態(tài)化工作,各級各類學(xué)校要求教師和學(xué)生每天上報健康情況以及疫情有關(guān)信息。因此,開發(fā)一個合適的系統(tǒng),師生可以借助該系統(tǒng)完成信息的上報,能夠方便地進行數(shù)據(jù)的收集和統(tǒng)計,這將會是學(xué)校面對疫情實行防控的一個有效舉措。
開發(fā)一個完整的系統(tǒng)首先要進行的是需求分析,通常需要結(jié)合調(diào)查來實施,即通過對系統(tǒng)中涉及的對象開展調(diào)查,并對收集到的調(diào)查資料進行分析,獲知使用者的各類需求,從而進一步確定系統(tǒng)所需要實現(xiàn)的功能。只有確確實實地理解使用者的實際需求,才能開發(fā)出適合其使用的系統(tǒng)。因此,需求分析是進行系統(tǒng)設(shè)計的基礎(chǔ),通常也是涉及范圍最廣、花費時間最多的一個步驟,這個步驟做得好將會為系統(tǒng)的成功開發(fā)打下良好的根基。
通過實地調(diào)查和對學(xué)校疫情防控工作情況開展調(diào)研,充分了解學(xué)校對校園疫情防控日報系統(tǒng)的各種要求,明確本系統(tǒng)的核心功能是填寫疫情相關(guān)的健康數(shù)據(jù),并能夠?qū)崿F(xiàn)對數(shù)據(jù)的管理,由學(xué)生、教師和管理員三類人員使用。系統(tǒng)實行用戶分級登錄,登錄后不同的用戶會轉(zhuǎn)入對應(yīng)的頁面。教師和學(xué)生可以進行個人信息的填寫以及每日健康數(shù)據(jù)的填報,系統(tǒng)提供數(shù)據(jù)的修改、查詢和統(tǒng)計等功能;管理員可以管理師生填寫的數(shù)據(jù)。
通過需求分析,明確本系統(tǒng)主要有如下功能模塊。
1.1.1信息填寫和維護。學(xué)生通過學(xué)籍號和密碼登錄系統(tǒng),登錄后可以完善個人信息,包括姓名、性別、班級、手機號碼等,之后可隨時查看本人的信息,同時可以對信息進行維護。
1.1.2 每日健康打卡。學(xué)生每天登錄系統(tǒng)填寫當(dāng)日健康信息,包括今日所在地區(qū),體溫是否正常,身體健康狀況,健康碼狀態(tài),有無境外或中高風(fēng)險地區(qū)旅居史或人員接觸史,有無確診或疑似病例接觸史等,完成健康打卡,打卡記錄會保存于系統(tǒng)中。
1.1.3 打卡信息查詢。學(xué)生能夠通過系統(tǒng)查詢到本人當(dāng)天及以往的打卡記錄。
教師使用教師編號登錄系統(tǒng),登錄后也擁有信息填寫和維護、每日健康打卡和打卡信息查詢等操作權(quán)限。除此之外,擔(dān)任班主任的教師還能夠通過系統(tǒng)查看班級學(xué)生的信息和打卡記錄,從而獲知學(xué)生的健康狀況。
系統(tǒng)給管理員提供專門的賬號和密碼,在管理員頁面中可以進行最高的權(quán)限操作,具體功能如下:
1.3.1 用戶信息管理。管理員擁有對教師和學(xué)生的信息執(zhí)行查詢、統(tǒng)計等權(quán)限。
1.3.2打卡信息管理。管理員可以查詢或統(tǒng)計教師和學(xué)生的打卡信息,通過查詢獲知師生是否完成當(dāng)天的打卡,并根據(jù)未完成打卡名單提醒相關(guān)人員;通過統(tǒng)計當(dāng)日所有的打卡數(shù)據(jù),可方便地獲悉全校師生當(dāng)前的健康狀況,做到及時地處理和上報,促進疫情防控工作有序地開展。
1.3.3用戶角色管理。管理員能夠為相應(yīng)的用戶添加角色。
本系統(tǒng)的功能模塊結(jié)構(gòu),如圖1所示。
圖1 系統(tǒng)功能模塊結(jié)構(gòu)圖
數(shù)據(jù)庫的設(shè)計在整個系統(tǒng)的構(gòu)建過程中是必不可少的一個環(huán)節(jié),其設(shè)計的優(yōu)劣不僅對系統(tǒng)功能的正常使用和運行效率產(chǎn)生影響,也會影響到后期的數(shù)據(jù)更新維護和性能擴展。
本系統(tǒng)采用SQL Server組織數(shù)據(jù),它是Microsoft公司開發(fā)的基于關(guān)系模型的數(shù)據(jù)庫管理系統(tǒng),具備性能穩(wěn)定、安全可靠、使用方便、與其它軟件集成程度高等優(yōu)點,適合作為后臺數(shù)據(jù)庫管理平臺[2]。
概念結(jié)構(gòu)設(shè)計環(huán)節(jié)的任務(wù)是將現(xiàn)實生活中用戶的實際需求做進一步處理,變成信息領(lǐng)域的概念模型[3]。概念設(shè)計的方法經(jīng)常采用E-R圖,它能夠刻畫實體之間的關(guān)系,由以下三個部分構(gòu)成。
2.1.1 實體:現(xiàn)實中的事物或抽象概念。通過對校園疫情防控日報系統(tǒng)進行的需求分析做抽象化處理,確定本系統(tǒng)主要涉及學(xué)生、教師、用戶、班級和每日健康打卡等實體。
2.1.2 屬性:實體或聯(lián)系的特征。比如每日健康打卡實體,有打卡ID,姓名,手機號碼,今日所在地區(qū),體溫是否正常,身體健康狀況,健康碼狀態(tài),有無境外或中高風(fēng)險地區(qū)旅居史或人員接觸史,有無確診或疑似病例接觸史等屬性。
2.1.3 聯(lián)系:不同事物之間的關(guān)系,主要有三種類型。
(1)一對一聯(lián)系:比如教師與班級之間的聯(lián)系是一對一的類型。(2)一對多聯(lián)系:比如用戶與每日健康打卡的聯(lián)系,一個用戶可以多次填寫健康打卡,但一條健康打卡數(shù)據(jù)只屬于一個用戶,因此他們之間是一對多的聯(lián)系。(3)多對多聯(lián)系。
本系統(tǒng)采用E-R圖進行概念設(shè)計的過程中,首先針對各個實體設(shè)計出分E-R圖,接下來對其進行合并,然后做優(yōu)化處理,最終得出本系統(tǒng)的基本E-R圖[4],如圖2所示。
圖2 系統(tǒng)基本E-R圖
邏輯結(jié)構(gòu)設(shè)計環(huán)節(jié)的任務(wù)是將抽象的E-R圖做具體化操作,在本系統(tǒng)中,把它轉(zhuǎn)換為關(guān)系模型[5]。實體及實體間的聯(lián)系怎么轉(zhuǎn)換為關(guān)系模型,關(guān)系的屬性及關(guān)系的碼怎么確定,是概念結(jié)構(gòu)轉(zhuǎn)換為邏輯結(jié)構(gòu)過程中需要處理的事情。
2.2.1 E-R圖向關(guān)系模型轉(zhuǎn)換的規(guī)則
(1)一個實體直接轉(zhuǎn)換成一個關(guān)系。例如本系統(tǒng)的E-R圖中,教師實體對應(yīng)的關(guān)系為:教師(教師編號,姓名,性別,教研組,手機號碼),其中,教師編號是主碼,也稱為主關(guān)鍵字。
(2)一個聯(lián)系若是一對一類型,則可以作為屬性并入任何一端實體對應(yīng)的關(guān)系中,同時增加另外一端實體的主碼,保證兩端實體相關(guān)聯(lián)。例如E-R圖中教師和班級之間的聯(lián)系,并入到班級實體對應(yīng)的關(guān)系中,在班級關(guān)系的原有屬性中增加教師編號(教師實體的主碼)這個新屬性。
(3)一個聯(lián)系若是一對多類型,則可以作為屬性并入多端實體中,同時增加一端實體的主碼。例如E-R圖中用戶和每日健康打卡的聯(lián)系,并入到每日健康打卡實體對應(yīng)的關(guān)系中,在每日健康打卡關(guān)系的原有屬性中增加用戶ID(用戶實體的主碼)和填寫日期(聯(lián)系的屬性)這兩個新屬性。
(4)一個聯(lián)系若是多對多類型,則需要將其轉(zhuǎn)換成關(guān)系。本系統(tǒng)沒有多對多類型的聯(lián)系,無需進行轉(zhuǎn)換[6]。
2.2.2 關(guān)系規(guī)范化處理
關(guān)系依照規(guī)范化的程度可以劃分為五級范式,在設(shè)計的過程中一般來說需要達到第三范式。依據(jù)范式規(guī)則分析每一個關(guān)系中的非主屬性對主碼的函數(shù)依賴關(guān)系,確定其屬于第幾范式,對沒有達到第三范式的關(guān)系進行優(yōu)化處理,使最終得到的數(shù)據(jù)庫是科學(xué)的、合理的。
2.2.3 建立關(guān)系模型
根據(jù)轉(zhuǎn)換規(guī)則和規(guī)范化理論,對校園疫情防控日報系統(tǒng)中的關(guān)系進行規(guī)范化處理和優(yōu)化,將概念設(shè)計階段得到的系統(tǒng)基本E-R圖,轉(zhuǎn)換為下列五個關(guān)系模式,其中關(guān)系的主碼利用下劃線進行標(biāo)識。
(1)教師(,姓名,性別,教研組,手機號碼)
(2)學(xué)生(,姓名,性別,班級,手機號碼)
(3)用戶(,密碼,用戶類型)
(4)班級(,班級名稱,班主任)
(5)每日健康打卡(,用戶ID,姓名,填寫日期,手機號碼,今日所在地區(qū),體溫是否正常,身體健康狀況,健康碼狀態(tài),有無境外或中高風(fēng)險地區(qū)旅居史或人員接觸史,有無確診或疑似病例接觸史)
這個環(huán)節(jié)的一項重要工作是設(shè)計出數(shù)據(jù)庫的表結(jié)構(gòu)。通過對邏輯設(shè)計階段建立的關(guān)系模型進行處理,原則上將一個關(guān)系設(shè)計成一張數(shù)據(jù)表。因此在本系統(tǒng)中,由上述五個關(guān)系模式可設(shè)計得出五張數(shù)據(jù)表:每日健康打卡表(health)、教師表(teacher)、學(xué)生表(student)、用戶表(user)和班級表(class)。下面以“用戶”和“每日健康打卡”兩個關(guān)系模式為例做具體的說明,設(shè)計得出“用戶表(user)”和“每日健康打卡表(health)”的表結(jié)構(gòu),如表1和表2所示。
表1 用戶表(user)
表2 每日健康打卡表(health)
對數(shù)據(jù)庫進行完整的設(shè)計之后,接下來數(shù)據(jù)庫是依據(jù)最終得到的表結(jié)構(gòu),并借助于具體的數(shù)據(jù)庫環(huán)境來實施的。本系統(tǒng)的實施環(huán)境是SQL Server,首先啟動軟件,連接服務(wù)器后創(chuàng)建一個名稱為“yqfk”的數(shù)據(jù)庫,然后依據(jù)數(shù)據(jù)表結(jié)構(gòu),建立對應(yīng)的數(shù)據(jù)表,主要有teacher、student、user、class和health五張表,并創(chuàng)建表之間的關(guān)系,如圖3所示。接下來就可以通過SQL Server平臺針對表數(shù)據(jù)進行所需要的操作。
圖3 表及表之間的關(guān)系
本文根據(jù)數(shù)據(jù)庫設(shè)計的步驟和設(shè)計原則,結(jié)合疫情防控的實際要求,對校園疫情防控日報系統(tǒng)的數(shù)據(jù)庫進行了詳細的設(shè)計,首先在明確系統(tǒng)的需求和功能后,將用戶需求抽象為概念模型,再轉(zhuǎn)換為關(guān)系模型,以此作為數(shù)據(jù)表結(jié)構(gòu)設(shè)計的依據(jù),最后通過開發(fā)環(huán)境實現(xiàn)數(shù)據(jù)庫和數(shù)據(jù)表的創(chuàng)建。設(shè)計過程中依據(jù)數(shù)據(jù)庫設(shè)計原則,運用規(guī)范化的設(shè)計方法,設(shè)計出的數(shù)據(jù)庫合理有效,能夠提高系統(tǒng)的可操作性,易于維護,是后期進行系統(tǒng)開發(fā)的數(shù)據(jù)保障和有力支撐。
[1]夏婉,李全,張晶晶.疫情下智慧社區(qū)管理系統(tǒng)構(gòu)建[J].信息技術(shù)與信息化,2020(8):67-70.
[2]張素青,王利.SQL Server 2008數(shù)據(jù)庫應(yīng)用 技術(shù)(第2版)[M].北京:人民郵電出版社,2019.
[3]王兵兵,陳能,丁雅雪.基于MYSQL的智慧 社區(qū)助老關(guān)愛平臺數(shù)據(jù)庫設(shè)計[J].信息通信,2019(2): 152- 154.
[4]吳鋒珍.高校圖書管理系統(tǒng)的數(shù)據(jù)庫設(shè)計[J]. 湖南郵電職業(yè)技術(shù)學(xué)院學(xué)報,2016,15(2):32-35.
[5]王濱.汽車銷售系統(tǒng)數(shù)據(jù)庫設(shè)計與實現(xiàn)[J]. 網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2021(7):50-52.
[6]楊浦,王樑.網(wǎng)上圖書銷售管理數(shù)據(jù)庫設(shè)計[J].電腦知識與技術(shù), 2018,14(26):13-15.
Database Design of Campus Epidemic Prevention and Control Daily Report System
Lin Heqing
(Fujian Economic School, Fuzhou 350003 Fujian)
The database is an indispensable part of a system, and the effect of its design is related to the normal operation of the system. Through on-the-spot investigation and full investigation of the school’s epidemic prevention and control process, the functional requirements of the system were analyzed. In combination with the SQL Server 2008 development platform, the database design and implementation of the campus epidemic prevention and control daily report system were studied, the implementation process of each link in the database design was understood, and a scientific and reasonable database was designed to provide data support for the later system development.
Campus epidemic prevention and control;SQL Server;Database;Design
TP311.135.9
A
1672-1047(2022)04-0109-04
10.3969/j.issn.1672-1047.2022.04.26
2022-07-18
林荷清,女,福建福州人,講師。研究方向:數(shù)據(jù)庫技術(shù)研究。
[責(zé)任編輯:羅幼平]