李志剛
摘要:該文從數(shù)據(jù)庫(kù)系統(tǒng)需求、設(shè)計(jì)原則、數(shù)據(jù)字典、E-R實(shí)體聯(lián)系圖、數(shù)據(jù)表結(jié)構(gòu)等方面闡述了基于Mysql,以滿足中職學(xué)校學(xué)生操行管理工作的需要,能實(shí)現(xiàn)學(xué)生基本信息、考勤信息、勞動(dòng)信息、作業(yè)信息及日常行為信息等操行管理的數(shù)據(jù)庫(kù)系統(tǒng)的設(shè)計(jì)。
關(guān)鍵詞:學(xué)生操行管理;數(shù)據(jù)庫(kù);MySQL
1.概述
在中等職業(yè)學(xué)校中,學(xué)生操行管理工作,主要體現(xiàn)在管理學(xué)生考勤、勞動(dòng)、行為等日常表現(xiàn)中。通常班主任需要安排多名班干部分別負(fù)責(zé)管理、記錄,并于每周、每月及學(xué)期末進(jìn)行統(tǒng)計(jì)匯總、評(píng)分,以評(píng)價(jià)學(xué)生表現(xiàn),為學(xué)生的日常管理、班級(jí)管理及德育教育工作提供數(shù)據(jù)支持。數(shù)據(jù)越詳細(xì),統(tǒng)計(jì)越及時(shí),越有利于學(xué)生管理工作有的放矢。但是,在傳統(tǒng)模式下,數(shù)據(jù)多以紙質(zhì)形式存在,即使錄入Excel,也存在統(tǒng)計(jì)匯總效率低,不及時(shí)等問(wèn)題。
運(yùn)用現(xiàn)代信息技術(shù)手段,建立基于WEB的學(xué)生操行管理系統(tǒng),教師、學(xué)生通過(guò)手機(jī)等設(shè)備錄入原始數(shù)據(jù),在WEB服務(wù)器中進(jìn)行存儲(chǔ),然后通過(guò)瀏覽器訪問(wèn),即可實(shí)時(shí)查詢學(xué)生的各項(xiàng)表現(xiàn)及統(tǒng)計(jì)數(shù)據(jù),會(huì)極大提高數(shù)據(jù)統(tǒng)計(jì)工作效率。學(xué)生操行管理數(shù)據(jù)庫(kù),則是此學(xué)生操行管理平臺(tái)中最基礎(chǔ)、最核心的部分。MvSOL數(shù)據(jù)庫(kù)是一個(gè)在WEB應(yīng)用中非常流行的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),具有開(kāi)源、免費(fèi)、體積小,速度快、性能卓越,常與PHP及Java等搭配,組成開(kāi)發(fā)應(yīng)用環(huán)境。本文即采用Mysql來(lái)設(shè)計(jì)建立學(xué)生操行管理數(shù)據(jù)庫(kù)。
2.數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)
2.1系統(tǒng)需求
學(xué)生操行管理系統(tǒng)需要能實(shí)時(shí)記錄學(xué)生的各項(xiàng)日常表現(xiàn),實(shí)時(shí)匯總,為班主任的班級(jí)管理、學(xué)生德育教育、期末學(xué)生操行評(píng)定工作等提供數(shù)據(jù)依據(jù)。因此,本數(shù)據(jù)庫(kù)必須要滿足如下要求:
1)能記錄學(xué)生的基本信息,如姓名、籍貫、出生日期、家長(zhǎng)聯(lián)系電話等;
2)能記錄學(xué)生考勤原始信息;
3)能記錄學(xué)生住宿信息,便于宿舍管理;
4)能記錄班班干部、寢室長(zhǎng)等學(xué)生干部信息;
5)能記錄學(xué)生的勞動(dòng)值日安排及學(xué)生勞動(dòng)狀況等原始信息;
6)能記錄學(xué)生作業(yè)完成情況;
7)能記錄學(xué)生的其他表現(xiàn),如拾金不昧、打架、是否積極參加集體活動(dòng)等事件信息;
8)有多用戶登錄功能,如不同的班干部可完成不同信息的錄入;
9)能自動(dòng)完成每周、每學(xué)期考勤、作業(yè)、勞動(dòng)等表現(xiàn)的匯總瀏覽;
10)能自動(dòng)完成每學(xué)期各周學(xué)生操行表現(xiàn)的成績(jī)計(jì)算。
2.2數(shù)據(jù)表的設(shè)計(jì)原則
本數(shù)據(jù)庫(kù)的設(shè)計(jì),遵循一事一地的原則,每一數(shù)據(jù)表只記錄某類實(shí)體的原始數(shù)據(jù),數(shù)據(jù)的匯總統(tǒng)計(jì),均采用視圖形式予以實(shí)現(xiàn)。
2.3系統(tǒng)的數(shù)據(jù)字典
根據(jù)系統(tǒng)需求及設(shè)計(jì)原則,本系統(tǒng)各數(shù)據(jù)表如下表所示。
2.4系統(tǒng)E-R圖
根據(jù)系統(tǒng)需求,數(shù)據(jù)字典,繪制本數(shù)據(jù)庫(kù)E-R圖,如下圖所示,圖中使用矩形表示實(shí)體,菱形表示聯(lián)系,線條用于連接。
2.5數(shù)據(jù)表設(shè)計(jì)
根據(jù)E-R圖,本數(shù)據(jù)庫(kù)創(chuàng)建了多個(gè)數(shù)據(jù)表,部分?jǐn)?shù)據(jù)表結(jié)構(gòu)如下。
1)管理員表:aid(int,notnull,auto_increment,主鍵),用戶名(varchar,255),密碼(varchar,255),權(quán)限(int,2),備注(vatchar,255)。
2)學(xué)期表:tid(int,not null,auto_increment,主鍵),學(xué)期(int,1),學(xué)年(varchar,20),開(kāi)始日期(date),結(jié)束日期(date)。
3)操行項(xiàng)目表:did(int,not null,auto_increment,主鍵),行為類別(varchar,255),名稱(varchar,255),分值(double)。
4)勞動(dòng)記錄表:fid(int,notnull,auto_increment,主鍵),日期(date),sid(int,11,指學(xué)生表id),時(shí)間(varchar,2,指中午、下午、晚上等),did(int,11,指勞動(dòng)完成表現(xiàn),操行項(xiàng)目表id)。
5)作業(yè)記錄表:wid(im,notnull,auto_increment,主鍵),eid(int,11,作業(yè)信息表id),sid(int,2,是學(xué)生表id),did(int,11,操行項(xiàng)目表id,指作業(yè)完成表現(xiàn))。
6)考勤表:kid(int,notnull,auto_increment,主鍵),sid(int,11,是學(xué)生表id),日期(date),節(jié)次(varchar,10,采用n或m-n形式表示),did(int,11,操行項(xiàng)目表id,指考勤表現(xiàn)),缺勤節(jié)次(int,3)。
為簡(jiǎn)化最終SQL查詢統(tǒng)計(jì),還需要添加若干中間視圖,其一為按周顯示每天各節(jié)課學(xué)生考勤信息;其二為綜合各記錄表信息,匯總學(xué)生操行表現(xiàn)數(shù)據(jù),為操行成績(jī)計(jì)算提供直接數(shù)據(jù)。
7)周考勤瀏覽:sid(int,11,是學(xué)生表sid),日期(date),w08(varchar,1,指周日晚自習(xí)第一節(jié)),w11(varchar,1,指周一第一節(jié)),……。
8)操行匯總:sid(im,為學(xué)生表sid),行為(va/'char,255,為行為名稱),日期(date),數(shù)量(decimal,32,0)
3.結(jié)束語(yǔ)
本數(shù)據(jù)庫(kù)的設(shè)計(jì),基本能滿足學(xué)生操行管理系統(tǒng)的數(shù)據(jù)處理需求,不過(guò),也存在兩個(gè)需要注意的地方。其一,在周考勤瀏覽設(shè)計(jì)中,為將某一周某生多天的考勤記錄,合并為一條記錄,除需采用分組語(yǔ)句外,還需采用group_concat函數(shù),將同一學(xué)生同一天同一節(jié)次的數(shù)據(jù)進(jìn)行連接(本不該有的多余數(shù)據(jù)),在瀏覽考勤表時(shí),若節(jié)次字段值超過(guò)了1字符,即可判斷原始考勤數(shù)據(jù)輸人重復(fù)!此問(wèn)題除瀏覽時(shí)發(fā)現(xiàn)外,尚未找到有效解決辦法。一旦發(fā)現(xiàn)錯(cuò)誤,需返回相關(guān)界面,修改重復(fù)的考勤數(shù)據(jù)。其二,按學(xué)期統(tǒng)計(jì)每周學(xué)生操行表現(xiàn)及成績(jī),因?qū)W期周次各不相同等多種原因,難以設(shè)計(jì)相應(yīng)視圖,只有在操行管理系統(tǒng)中的相應(yīng)頁(yè)面,編寫SQL語(yǔ)句進(jìn)行實(shí)現(xiàn)。