卓之淮 朱立火 黃塵 鮑蓉
摘要:在“校園請(qǐng)假助手”中,數(shù)據(jù)庫設(shè)計(jì)尤為重要。本系統(tǒng)針對(duì)請(qǐng)假一系列過程進(jìn)行分析和調(diào)研,利用數(shù)據(jù)建模工具進(jìn)行建模,并在數(shù)據(jù)庫中實(shí)現(xiàn)。通過本系統(tǒng)的實(shí)際運(yùn)行,驗(yàn)證了最初的設(shè)計(jì)要求,能夠滿足學(xué)校請(qǐng)假的要求。
關(guān)鍵詞:微信公眾平臺(tái);數(shù)據(jù)庫設(shè)計(jì);請(qǐng)假助手
中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A DOI:10.3969/j.issn.1003-6970.2015.05.014
0 引言
基于微信公眾平臺(tái)的請(qǐng)假系統(tǒng)[1-3]是一種新穎的請(qǐng)假方式。它降低了因時(shí)間、距離帶來的不便,更方便、快捷、貼心為全校師生服務(wù)。本系統(tǒng)記錄了某所高校所有請(qǐng)假信息,便于教師、父母及時(shí)了解孩子在校住宿情況。
1 事務(wù)分析
本系統(tǒng)中各個(gè)角色及其事務(wù)描述如下:
學(xué)生:發(fā)出請(qǐng)假請(qǐng)求,查詢請(qǐng)假請(qǐng)求,查詢提交的請(qǐng)假最終的批假情況。
輔導(dǎo)員:對(duì)其管理的班級(jí)學(xué)生請(qǐng)假請(qǐng)求進(jìn)行批假并查詢所有請(qǐng)假的學(xué)生的信息。
書記:對(duì)本學(xué)院的請(qǐng)假學(xué)生進(jìn)行批假,前提:輔導(dǎo)員已經(jīng)同意該同學(xué)的請(qǐng)假請(qǐng)求;查詢本學(xué)院的所有請(qǐng)假信息。
任課老師:查詢其管理的班級(jí)同學(xué)的部分請(qǐng)假信息。
樓長(zhǎng):查詢其管理的宿舍樓某同學(xué)的部分請(qǐng)假信息。
各用戶都可修改登錄密碼。
2 數(shù)據(jù)分析
本系統(tǒng)涉及到的要操作的主要數(shù)據(jù)實(shí)體及其屬性如下:
學(xué)生實(shí)體“學(xué)號(hào)”、“姓名”、“密碼”、“手機(jī)號(hào)”
班級(jí)實(shí)體“年級(jí)屆”、“專業(yè)代號(hào)”、“班級(jí)編號(hào)”
教師實(shí)體“教工號(hào)”、“密碼”、“手機(jī)號(hào)”、“權(quán)限”
學(xué)院實(shí)體“學(xué)院代號(hào)”、“名稱”
樓長(zhǎng)實(shí)體“職工號(hào)”、“密碼”
宿舍實(shí)體“樓號(hào)”、“A/B區(qū)號(hào)”、“樓層號(hào)”、“房間號(hào)”
授課關(guān)系“年級(jí)屆”、“專業(yè)代號(hào)”、“班級(jí)編號(hào)”、“教工號(hào)”
請(qǐng)假實(shí)體“請(qǐng)假提交時(shí)間”、“請(qǐng)假開始時(shí)間”、“請(qǐng)假結(jié)束時(shí)間”、“請(qǐng)假事由”、“在外留宿”、“簡(jiǎn)述原因”、“輔導(dǎo)員批假時(shí)間”、“輔導(dǎo)員批假結(jié)果”、“書記批假時(shí)間”、“書記批假結(jié)果”
3 數(shù)據(jù)實(shí)體關(guān)系設(shè)計(jì)
學(xué)生和請(qǐng)假條實(shí)體及其屬性、兩個(gè)實(shí)體間關(guān)系,如圖1所示。
學(xué)生和宿舍實(shí)體及其屬性、兩個(gè)實(shí)體間關(guān)系,如圖2所示。
教師、班級(jí)、學(xué)院實(shí)體及其屬性、實(shí)體間關(guān)系,如圖3。
4 數(shù)據(jù)表結(jié)構(gòu)設(shè)計(jì)
以數(shù)據(jù)實(shí)體為基礎(chǔ),結(jié)合需求分析,在滿足數(shù)據(jù)完整性和實(shí)用性基礎(chǔ)上,實(shí)現(xiàn)數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計(jì)。系統(tǒng)共13張表,表的設(shè)計(jì)根據(jù)本校情況,如表l所示。
表1表示學(xué)校的幾號(hào)宿舍樓,例:1號(hào)樓,2號(hào)樓。
表2表示幾號(hào)樓的A/B座,每號(hào)樓都有A/B座,并設(shè)置外鍵關(guān)聯(lián)樓號(hào)表。
表4表示第幾號(hào)樓的、A/B座的、第幾層的房間數(shù),以房間號(hào)作為主鍵,例如:01房間,并設(shè)置外鍵去關(guān)聯(lián)該樓層。
表5表示樓長(zhǎng)信息表,并設(shè)置外鍵去關(guān)聯(lián)該位樓長(zhǎng)所管理的幾號(hào)樓。
表6表示第多少屆的學(xué)生,例如:2012屆,2013屆
表7表示學(xué)校開設(shè)的專業(yè)信息,以專業(yè)代號(hào)為主鍵。
表8表示學(xué)校有多少學(xué)院,以學(xué)院編號(hào)作為主鍵。
表9表示教師基本信息表,并設(shè)置外鍵關(guān)聯(lián)該位老師所屬的學(xué)院。
表10表示班級(jí)信息表,以年級(jí)編號(hào)、專業(yè)編號(hào)、班級(jí)編號(hào)作為主屬性,去唯一標(biāo)識(shí)一個(gè)班級(jí),并設(shè)置外鍵去關(guān)聯(lián)該班級(jí)的輔導(dǎo)員。
表11表示某位學(xué)生基本信息表,并設(shè)置年級(jí)編號(hào)、專業(yè)編號(hào)、班級(jí)編號(hào)、樓號(hào)、A/B區(qū)號(hào),樓層號(hào)、房間號(hào)作為外鍵,去關(guān)聯(lián)班級(jí)表,宿舍組成信息。
表12表示任課老師授課信息表,以年級(jí)編號(hào)、專業(yè)編號(hào)、班級(jí)編號(hào)、教工號(hào)作為主屬性同時(shí)作為外鍵去分別關(guān)聯(lián)年級(jí)表、專業(yè)表、班級(jí)表、教師表,唯一標(biāo)識(shí)一條授課信息。
表13請(qǐng)假表,記錄該同學(xué)請(qǐng)假的詳情,并通過學(xué)號(hào)這個(gè)外鍵關(guān)聯(lián)學(xué)生表。
5 開發(fā)工具
通過對(duì)數(shù)據(jù)庫的需求進(jìn)行分析,采用了關(guān)系型的數(shù)據(jù)庫“MysQL”作為數(shù)據(jù)環(huán)境;采用“Navicat forMysQL”對(duì)數(shù)據(jù)進(jìn)行管理。
6 數(shù)據(jù)訪問實(shí)現(xiàn)
本系統(tǒng)中要操作數(shù)據(jù)的事務(wù)主要有:請(qǐng)假事務(wù)、批假事務(wù)、查詢事務(wù)。
以學(xué)生請(qǐng)假事務(wù)為例,如下,圖4是學(xué)生成功登錄后,填寫請(qǐng)假信息的界面,圖5是學(xué)生提交請(qǐng)假成功后的界面。
圖4表示,學(xué)生成功登錄后進(jìn)入請(qǐng)假界面,填寫對(duì)應(yīng)的請(qǐng)假信息,提交到公眾賬號(hào)的服務(wù)器,服務(wù)器進(jìn)行業(yè)務(wù)處理,并向微信用戶端返回消息提示,如圖5所示。其中數(shù)據(jù)處理代碼如下所示: