臧 強(qiáng),程 立
(沈陽(yáng)航空航天大學(xué) 遼寧 沈陽(yáng) 110136)
基于ASP技術(shù)和SQL數(shù)據(jù)庫(kù)的成績(jī)查詢系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
臧 強(qiáng),程 立
(沈陽(yáng)航空航天大學(xué) 遼寧 沈陽(yáng) 110136)
為了方便學(xué)生和輔導(dǎo)員查詢學(xué)生成績(jī),提高教師對(duì)學(xué)生成績(jī)的管理效率,采用ASP技術(shù)、數(shù)據(jù)庫(kù)查詢技術(shù)和系統(tǒng)安全控制技術(shù),基于B/S訪問(wèn)模式實(shí)現(xiàn)了學(xué)生成績(jī)查詢系統(tǒng)的前臺(tái)訪問(wèn)頁(yè)面、后臺(tái)管理頁(yè)面和數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì)等系統(tǒng)功能。系統(tǒng)在投入使用后,運(yùn)行安全穩(wěn)定,充分滿足了廣大師生對(duì)學(xué)生成績(jī)管理、查詢的需求。
ASP技術(shù);SQL數(shù)據(jù)庫(kù);查詢系統(tǒng);系統(tǒng)安全
筆者所在單位要求學(xué)生在校學(xué)習(xí)期間必須修滿一定的學(xué)分才允許畢業(yè),為方便學(xué)生及時(shí)查詢自己的成績(jī),也方便老師和輔導(dǎo)員對(duì)學(xué)生所修分?jǐn)?shù)的管理,筆者開發(fā)了此成績(jī)查詢系統(tǒng),現(xiàn)以本系統(tǒng)為例,分析系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)過(guò)程。
為老師提供系統(tǒng)登錄窗口,登錄成功后提供信息發(fā)布、添加成績(jī)、修改成績(jī)等功能的一站式接口。
為系統(tǒng)設(shè)計(jì)信息發(fā)布功能,向?qū)W生介紹系統(tǒng)使用說(shuō)明,及時(shí)發(fā)布成績(jī)相關(guān)信息。
應(yīng)向老師提供成績(jī)錄入接口,考慮到每學(xué)期(半年)都會(huì)有近六千條左右的數(shù)據(jù)量,所以在提供單條成績(jī)信息錄入功能時(shí),也應(yīng)提供批量錄入方法。
向同學(xué)提供按學(xué)號(hào)查詢功能,查詢個(gè)人成績(jī)信息;向輔導(dǎo)員提供按班級(jí)號(hào)查詢功能,可以直接以班級(jí)為單位查詢班級(jí)所有成員的分?jǐn)?shù)。
在數(shù)據(jù)添加和整理過(guò)程中難免會(huì)有遺漏或差錯(cuò),所以應(yīng)在系統(tǒng)中添加成績(jī)修改功能,供老師修改有問(wèn)題的信息記錄。
如果學(xué)生對(duì)自己的分?jǐn)?shù)有疑問(wèn),可以在留言板內(nèi)給老師留言,與老師溝通;同時(shí)向老師提供留言回復(fù)權(quán)限,對(duì)同學(xué)的疑問(wèn)進(jìn)行解答。
在系統(tǒng)的基礎(chǔ)功能實(shí)現(xiàn)的基礎(chǔ)上,適當(dāng)增加一些實(shí)用的功能,方便用戶使用。
根據(jù)系統(tǒng)功能設(shè)計(jì)要求,成績(jī)查詢系統(tǒng)所用數(shù)據(jù)庫(kù)需要建立兩個(gè)數(shù)據(jù)表:score和admin,其中score表中存儲(chǔ)以下信息:編號(hào)、學(xué)生的學(xué)號(hào)、姓名、班級(jí)號(hào)、所屬院系、所修分?jǐn)?shù)、錄入時(shí)間、錄入IP、備注,其中“學(xué)號(hào)”設(shè)置為關(guān)鍵字;admin表中存儲(chǔ)adminuser和password的信息即可[1]。
根據(jù)功能要求建立數(shù)據(jù)庫(kù)如表1、表2所示。

表1 score表Tab.1 Score table

表2 admin表Tab.2 Admin table
因?yàn)閷W(xué)生的成績(jī)?yōu)楣_信息,所以系統(tǒng)沒(méi)有針對(duì)學(xué)生設(shè)計(jì)登錄功能,只為老師提供登錄功能。登錄時(shí)用戶名和密碼不能為空,如果為空,則彈出警告框,提示“用戶名”或“密碼”不能為空;如果用戶名和密碼與數(shù)據(jù)庫(kù)存儲(chǔ)信息不匹配,則彈出警告框,“用戶名和密碼錯(cuò)誤”;如驗(yàn)證匹配則進(jìn)入后臺(tái)管理頁(yè)面[2]。


利用ewebeditor插件實(shí)現(xiàn)可見(jiàn)即可得的網(wǎng)站編輯功能,實(shí)現(xiàn)消息發(fā)布。
ewebeditor插件截圖如圖1所示。

圖1 ewebeditor插件截圖Fig. 1 Plug-in ewebeditor screenshots
提供單條信息添加功能,允許老師提交學(xué)號(hào)、姓名、班級(jí)號(hào)、所屬院系,錄入時(shí)間為提交信息時(shí)系統(tǒng)自動(dòng)獲取服務(wù)器時(shí)間,錄入IP為客戶端所用IP。一般單條錄入功能用在針對(duì)遺漏的信息進(jìn)行補(bǔ)錄工作[3]。
為了研究柔爆索爆炸驅(qū)動(dòng)碎片的飛散參數(shù),設(shè)計(jì)了12種不同尺寸的厚壁圓筒預(yù)制碎片,預(yù)制碎片采用45#鋼。柔爆索爆炸驅(qū)動(dòng)模型截面示意圖,如圖3所示。截面幾何參數(shù)如表1所列。其中,裝藥比為
實(shí)現(xiàn)代碼:

在實(shí)際工作中,老師更習(xí)慣于使用Excel來(lái)處理學(xué)生的成績(jī),考慮到excel數(shù)據(jù)導(dǎo)入SQL數(shù)據(jù)庫(kù)非常簡(jiǎn)便,因此學(xué)生的成績(jī)數(shù)據(jù)一般先有老師制成excel表(作為原始數(shù)據(jù)和備份存檔),然后由系統(tǒng)管理員將excel表導(dǎo)入SQL數(shù)據(jù)庫(kù)中。為了便于數(shù)據(jù)的導(dǎo)入,excel表中的數(shù)據(jù)類型應(yīng)嚴(yán)格設(shè)置如表3所示。
在導(dǎo)入數(shù)據(jù)時(shí),首先應(yīng)將原有數(shù)據(jù)進(jìn)行備份,然后記錄現(xiàn)有數(shù)據(jù)量和需要導(dǎo)入數(shù)據(jù)量,以便導(dǎo)入數(shù)據(jù)后核對(duì)數(shù)據(jù)總量。

表3 Excel數(shù)據(jù)表Tab.3 Excel data table
由于學(xué)生的成績(jī)不涉及個(gè)人隱私,所以系統(tǒng)沒(méi)有設(shè)置查詢權(quán)限,即只要知道學(xué)號(hào)或者班級(jí)號(hào)就可查詢成績(jī)。
當(dāng)學(xué)生按照學(xué)號(hào)查詢時(shí),如果輸入的學(xué)號(hào)為空或者輸入的學(xué)號(hào)與數(shù)據(jù)庫(kù)中的數(shù)據(jù)不匹配,則提示用戶不能為空或者輸入的的學(xué)號(hào)不正確,然后返回查詢頁(yè)面,如果輸入的學(xué)號(hào)正確,則按時(shí)間順序給出學(xué)生的成績(jī),并給出學(xué)生的總成績(jī)。
為了便于輔導(dǎo)員和班長(zhǎng)對(duì)班級(jí)成績(jī)的了解,系統(tǒng)提供了按班級(jí)號(hào)檢索的功能,其中班級(jí)號(hào)也不能為空或者與數(shù)據(jù)庫(kù)信息不匹配。如果班級(jí)號(hào)匹配,則默認(rèn)按學(xué)號(hào)順序輸出班級(jí)全體成員的成績(jī),其中成績(jī)?yōu)閭€(gè)人總成績(jī),在每個(gè)人的總成績(jī)后面提供名為“詳情”的鏈接,可以鏈接到個(gè)人按年統(tǒng)計(jì)成績(jī)。
學(xué)號(hào)查詢代碼:


針對(duì)數(shù)據(jù)可能存在錯(cuò)誤的問(wèn)題,系統(tǒng)設(shè)計(jì)了修改功能,首先需要按學(xué)號(hào)查詢學(xué)生的成績(jī),得出該生每年的成績(jī),在此將成績(jī)輸出框設(shè)為可編輯對(duì)話框,方便老師修改數(shù)據(jù)。
修改成績(jī)代碼:

由于本單位網(wǎng)站有成熟的留言板系統(tǒng),因此筆者將查分系統(tǒng)的留言功能整合到了單位網(wǎng)站留言板系統(tǒng)中,在此就不過(guò)多介紹。
人們常說(shuō)細(xì)節(jié)決定成敗,多做一些細(xì)節(jié)處理會(huì)使系統(tǒng)更加完善,用戶用起來(lái)更實(shí)用些。首先針對(duì)學(xué)分的合格標(biāo)準(zhǔn),設(shè)置了對(duì)比功能,當(dāng)一個(gè)學(xué)生的所修總分?jǐn)?shù)大于標(biāo)準(zhǔn)分?jǐn)?shù)時(shí),輸出字體染色為綠色,反之為紅色。其次在按班級(jí)查詢成績(jī)時(shí),除了默認(rèn)的按學(xué)號(hào)排序外,筆者還提供了按成績(jī)排序按鈕,按分?jǐn)?shù)由高到低輸出成績(jī),加上染色的比對(duì),很容易看出有多少人合格了,有多少人還沒(méi)有合格[4]。最后就是打印功能,即在網(wǎng)頁(yè)中添加了打印功能的實(shí)現(xiàn)代碼,輔導(dǎo)員和同學(xué)如果需要打印成績(jī),直接點(diǎn)擊打印按鈕即可。
對(duì)比色代碼:


將老師登錄后臺(tái)頁(yè)面時(shí)候的密碼使用MP5技術(shù)進(jìn)行加密處理,確保成績(jī)添加、修改權(quán)限的安全[5]。
在系統(tǒng)中加入了防注入代碼,防止非法用戶提交非法SQL語(yǔ)句,破壞數(shù)據(jù)庫(kù)系統(tǒng),同時(shí)系統(tǒng)自動(dòng)記錄非法用戶的提交時(shí)間和提交IP,供管理員掌握情況[6]。
將成績(jī)添加和修改頁(yè)面中添加IP比對(duì)代碼,即將有操作權(quán)限的老師所使用的電腦IP設(shè)為標(biāo)準(zhǔn)IP,當(dāng)用戶訪問(wèn)頁(yè)面時(shí),系統(tǒng)首先獲取訪問(wèn)者的IP,然后與標(biāo)準(zhǔn)IP進(jìn)行比對(duì),如果成功則繼續(xù)操作,否者提示用戶無(wú)訪問(wèn)權(quán)限并返回首頁(yè)。
bat即bat批處理文件,利用bat編寫自動(dòng)備份程序,按每周為間隔備份一次數(shù)據(jù),如數(shù)據(jù)發(fā)生問(wèn)題,可快速對(duì)數(shù)據(jù)進(jìn)行恢復(fù)。
本查詢系統(tǒng)基于B/S結(jié)構(gòu)[7],利用ASP語(yǔ)言和SQL數(shù)據(jù)庫(kù)實(shí)現(xiàn)了信息發(fā)布,成績(jī)錄入、成績(jī)查詢、成績(jī)修改等功能,同時(shí)本系統(tǒng)具有部署方便、數(shù)據(jù)安全、易于使用、便于管理等特點(diǎn),在投入運(yùn)行使用過(guò)程中運(yùn)行平穩(wěn),得到師生一致認(rèn)可。
[1] 黃雷. ASP + SQL Server項(xiàng)目開發(fā)實(shí)踐[M]. 北京:中國(guó)鐵道出版社,2006.
[2] 龍馬工作室. ASP+SQL Server網(wǎng)站開發(fā)實(shí)例精講[M].北京:人民郵電出版社,2007.
[3] 戎馬工作室. ASP與SQL Server動(dòng)態(tài)網(wǎng)站開發(fā)自學(xué)導(dǎo)航[M].北京:機(jī)械工業(yè)出版社,2007.
[4] 劉瑞冰.于ASP的成績(jī)管理系統(tǒng)成績(jī)排名實(shí)現(xiàn)[J].軟件導(dǎo)刊,2013,12(4):85-86.
LIU Rui-bing.Realization of the results of performance manegement based on asp[J].Software Guide,2013,12(4):85-86.
[5] 頊宇峰. ASP+SQL Server典型網(wǎng)站建設(shè)案例[M].北京:清華大學(xué)出版社,2006.
[6] 屈喜龍. ASP+SQL Server開發(fā)動(dòng)態(tài)網(wǎng)站實(shí)例薈萃[M].北京:機(jī)械工業(yè)出版社,2006.
[7] 韓勇.基于B/S結(jié)構(gòu)的新生報(bào)到系統(tǒng)設(shè)計(jì)[J].電子科技,2011(6):75-77.
HAN Yong.Design of new report system based on B/S structure[J].Electronic Science and Technology,2011(6):75-77.
Design and implementation of achievement inquires system based on ASP technology and SQL database
ZANG Qiang, CHENG Li
(Shenyang Aerospace Unievrsity, Shenyang 110136, China)
In order to make the students and instructors query student achievement convenient,improve teachers to student achievement management efficiency,use ASP technology,database inquires technology and system security control technology, visit the page, the background management page and database structure design and system functions to achieve student performance query system based on the access mode of B/S.The system was put to use,safe and stable operation,fully meet the demand for query student achievement management,the majority of teachers and students.
ASP technology; SQL database;inquires system;system security
TP311.5
A
1674-6236(2014)03-0045-03
2013–06–25 稿件編號(hào):201306166
臧 強(qiáng)(1982—),男,遼寧沈陽(yáng)人,助理工程師。研究方向:計(jì)算機(jī)科學(xué)與技術(shù)。