第一篇:營銷信息管理系統(tǒng)
營銷信息管理系統(tǒng)
孫利華 延壽縣電業(yè)局利用計(jì)算機(jī)技術(shù)、網(wǎng)絡(luò)技術(shù)等先進(jìn)的科技手段,在全縣范圍內(nèi)對各營業(yè)網(wǎng)點(diǎn)進(jìn)行聯(lián)網(wǎng),建立以輔助領(lǐng)導(dǎo)、加強(qiáng)管理、提高企業(yè)效益為目標(biāo)的先進(jìn)的信息管理系統(tǒng)。
以業(yè)務(wù)為基礎(chǔ),對具體工作人員進(jìn)行詳細(xì)分工,將責(zé)任落實(shí)到人,讓每個人都有責(zé)任感。調(diào)動每個人的工作熱情和積極性。現(xiàn)將營銷信息管理系統(tǒng)的各個模塊功能做以概述。
一、售電系統(tǒng)
主要用于完成對電力客戶購電款的收取。并打印售電相應(yīng)的各種單據(jù)、報(bào)表等。其業(yè)務(wù)說明:
1售電業(yè)務(wù):供售電員在購電廳使用,用于完成對電力客戶的購電款的收取。其業(yè)務(wù)流程為:
⑴用戶交納購電款,售電員將用戶的業(yè)務(wù)號,輸入計(jì)算機(jī),計(jì)算機(jī)根據(jù)用戶的業(yè)務(wù)號查詢并顯示用戶的各種信息。
⑵經(jīng)用戶確認(rèn)后,操作員選擇用戶的“交款方式”,并輸入用戶的交款金額。
⑶打印“購電憑證”。并交給現(xiàn)金員進(jìn)行審核,經(jīng)現(xiàn)金員審核無誤后返還給客戶。至此完成一筆售電業(yè)務(wù),購電數(shù)據(jù)進(jìn)入計(jì)算機(jī)系統(tǒng)。如用戶不能提供正確的業(yè)務(wù)號,售電員可使用系統(tǒng)的用戶查詢功能,跟據(jù)用戶的其它信息查詢出用戶業(yè)務(wù)號。注意事項(xiàng):只有打印“購電憑證”后,售電數(shù)據(jù)才能進(jìn)入系統(tǒng)。如在打印“購電憑證”前出現(xiàn)其它情況,應(yīng)在系統(tǒng)恢復(fù)正常后,重新檢查最后的一筆業(yè)務(wù)情況,如發(fā)現(xiàn)數(shù)據(jù)沒有進(jìn)入系統(tǒng),應(yīng)進(jìn)行重新購電。
2售電修改:當(dāng)發(fā)生售電錯誤時,用于修正售電數(shù)據(jù)。其業(yè)務(wù)流程為:
⑴輸入用戶的業(yè)務(wù)號。
⑵并仔細(xì)檢查,當(dāng)確認(rèn)無誤后進(jìn)行刪除業(yè)務(wù),然后重新進(jìn)行售電操作。
⑶將錯誤的購電憑證收回,并蓋好作廢專用章后進(jìn)行保存,以便查詢。將正確的購電憑證進(jìn)行保存。
注意事項(xiàng):只有具有特權(quán)業(yè)務(wù)的操作員才能進(jìn)行此項(xiàng)操作。當(dāng)日發(fā)生的售電錯誤,必須當(dāng)日處理。對于非當(dāng)日的售電錯誤數(shù)據(jù),不能使用此項(xiàng)功能進(jìn)行處理。系統(tǒng)對于發(fā)生的每一筆售電修改的業(yè)務(wù)都進(jìn)行保存,包括修改前數(shù)據(jù)和修改后數(shù)據(jù)、發(fā)生的時間、操作員信息等。當(dāng)發(fā)生異議時可使用“修改數(shù)據(jù)查詢”對數(shù)據(jù)進(jìn)行核對。
3結(jié)帳
⑴日結(jié)帳:主要對當(dāng)日進(jìn)行售電情況的帳務(wù)核對其業(yè)務(wù)過程:
①首先售電員打印當(dāng)日“日售電明細(xì)表”
②售電員根據(jù)“日售電明細(xì)表”和“購電憑證(存根)” 進(jìn)行對帳,比較兩者的業(yè)務(wù)數(shù)量、以及各項(xiàng)數(shù)據(jù)。當(dāng)確認(rèn)無誤后,與現(xiàn)金員進(jìn)行款額核對,三者數(shù)據(jù)必須一致,否則要認(rèn)真進(jìn)行數(shù)據(jù)核對,查出發(fā)生錯誤的原因,并進(jìn)行處理。
③將“日購電明細(xì)表”、“購電憑證(存根)”進(jìn)行統(tǒng)一保存。
注意事項(xiàng):在日結(jié)帳后,系統(tǒng)仍然可以進(jìn)行購電,但 購電后必須再次進(jìn)行日結(jié)賬,否則可能出現(xiàn)帳外購電的情況。這時會出現(xiàn)第二天不能購電的情況,當(dāng)出現(xiàn)這種情況時必須進(jìn)行前一日結(jié)帳。
⑵月結(jié)帳:用于在發(fā)行的前一日進(jìn)行周期性對帳。對系統(tǒng)中的購電款金額、余額、違約金、利息等數(shù)據(jù)進(jìn)行統(tǒng)計(jì),用于和財(cái)務(wù)部門的帳務(wù)數(shù)據(jù)進(jìn)行核對。
①在發(fā)行前打印截止當(dāng)前日期系統(tǒng)中的余額、購電等數(shù)據(jù)。
②將打印出的數(shù)據(jù)與財(cái)務(wù)部門進(jìn)行數(shù)據(jù)對比。注意事項(xiàng):由于每天都有購電業(yè)務(wù)產(chǎn)生,所以系統(tǒng)中的余額每日都發(fā)生變化。在對帳時應(yīng)注意系統(tǒng)時間的變化。必須采集相同時間的數(shù)據(jù)進(jìn)行對比。
⑶臨時性對帳:當(dāng)需要臨時性對帳時,打印出系統(tǒng)的數(shù)據(jù)進(jìn)行與財(cái)務(wù)的核對。業(yè)務(wù)情況與月結(jié)帳相同。
二、發(fā)行系統(tǒng)
在系統(tǒng)發(fā)行期間,購電系統(tǒng)繼續(xù)購電,登記系統(tǒng)也可以 正常進(jìn)行,但登記系統(tǒng)的數(shù)據(jù)是否當(dāng)月生效,取決于你的設(shè)置。系統(tǒng)可以每月發(fā)行多次,可以對全部用戶發(fā)行,也可以對部分用戶發(fā)行。
1系統(tǒng)發(fā)行范圍
⑴用戶發(fā)行:計(jì)算用戶的各種電量、電費(fèi)、余額等數(shù)據(jù)。⑵臺區(qū)發(fā)行:以臺區(qū)總表和用戶分表為依據(jù)。計(jì)算各個臺區(qū)的各種電量、損失率等數(shù)據(jù),可以實(shí)現(xiàn)臺區(qū)的損失考核。
⑶線路發(fā)行:以線路出口表為依據(jù),計(jì)算線路的電量的各種數(shù)據(jù),可以實(shí)現(xiàn)線路對臺區(qū)對用戶的考核。
⑷變電所發(fā)行:根據(jù)變電所的上下出口表,計(jì)算變電所的電量、損失數(shù)據(jù),實(shí)現(xiàn)變電所對線路的考核。
2發(fā)行設(shè)置
⑴設(shè)置發(fā)行月份:指設(shè)置本次的發(fā)行的年份、月份、次數(shù)。系統(tǒng)可以對每個月進(jìn)行99次發(fā)行。
⑵發(fā)行月初始化:生成發(fā)行數(shù)據(jù),考慮到在系統(tǒng)發(fā)行期間,用戶的數(shù)據(jù)是變化的、不確定的,需要反復(fù)進(jìn)行核實(shí),此時的數(shù)據(jù)不能正式進(jìn)入系統(tǒng),并且不能影響其它系統(tǒng)的正常運(yùn)行,所以將發(fā)行的數(shù)據(jù)裝入發(fā)行系統(tǒng)。以便將發(fā)行數(shù)據(jù)與系統(tǒng)的正式數(shù)據(jù)進(jìn)行隔離,只有當(dāng)數(shù)據(jù)正確無誤后并經(jīng)過審核、批準(zhǔn),再將發(fā)行后的數(shù)據(jù)正式返回的系統(tǒng)。
⑶錄入表示數(shù):將用戶的本月的本月表示數(shù)輸入系統(tǒng),可以通過手工方式和抄表器的方式進(jìn)行輸入。⑷發(fā)行計(jì)算:用戶計(jì)算是計(jì)算中最復(fù)雜的部分,包括計(jì)算的用戶的各種電量、電費(fèi)、用戶的余額等數(shù)據(jù)。
⑸數(shù)據(jù)核對:對經(jīng)過計(jì)算的用戶、臺區(qū)、線路、變電所的各種數(shù)據(jù)進(jìn)行核對。
⑹數(shù)據(jù)審批:對經(jīng)過計(jì)算和審核正確的數(shù)據(jù)、經(jīng)過審批確認(rèn)。經(jīng)審批后,表示此數(shù)據(jù)已經(jīng)正確無誤。
⑺沖減歸檔:將經(jīng)過審批的數(shù)據(jù),放入正式的系統(tǒng),同時對數(shù)據(jù)進(jìn)行歸檔保存,以備查詢。至此一個發(fā)行周期結(jié)束,可以打印各種報(bào)表
三、登記系統(tǒng)
完成對登記業(yè)務(wù)的處理,網(wǎng)絡(luò)匯簽登記系統(tǒng)主要包括 1日常業(yè)擴(kuò)報(bào)裝登記業(yè)務(wù)處理及各種登記單據(jù)、證書、原件管理查詢。
2網(wǎng)絡(luò)匯簽、各種單據(jù)、證書傳遞及業(yè)務(wù)流程控制。3電度表、電流互感器、電壓互感器等設(shè)備的出庫入庫報(bào)廢管理。
4各種單據(jù)、證書的審核存檔。
四、客戶服務(wù)系統(tǒng)(95598)
為電力客戶提供用電情況查詢、報(bào)修服務(wù)、投訴、法規(guī) 咨詢等服務(wù)。
1業(yè)務(wù)受理
接受用戶的業(yè)務(wù)。系統(tǒng)根據(jù)用戶提供信息和要求,完成 用戶的查詢、報(bào)修服務(wù)輸入系統(tǒng)。并進(jìn)行保存。
2報(bào)修服務(wù)
用于接受用戶的報(bào)修服務(wù)。并將報(bào)修用戶的詳細(xì)信息,包括用戶的詳細(xì)地址、聯(lián)系方式、用戶的故障情況等等各種信息,通過計(jì)算機(jī)網(wǎng)絡(luò)傳遞給維修班,并監(jiān)督維修班工作情況。
3檔案查詢
操作員根據(jù)用戶提供的用戶信息,完成用戶檔案、計(jì)量設(shè)備情況等各種用戶檔案信息的查詢。
4電費(fèi)查詢
用于查詢用戶的電費(fèi)情況,包括用戶的歷月發(fā)行的數(shù)據(jù),各種電量、電費(fèi)的詳細(xì)數(shù)據(jù)。
五、營業(yè)財(cái)務(wù)系統(tǒng) 1崗位設(shè)置
收款員:主要指客服中心的售電員、雜項(xiàng)費(fèi)收款員、各個農(nóng)村供電所的收款員。收費(fèi)項(xiàng)目主要有售電款、雜項(xiàng)費(fèi)。按系統(tǒng)的交款種類分為現(xiàn)金、支票。主要收取電力客戶的售電款、雜項(xiàng)費(fèi)。
2現(xiàn)金整理
主要整理、審核各個收費(fèi)員收取的各種款項(xiàng)。并將款項(xiàng)交與營業(yè)出納。根據(jù)系統(tǒng)的實(shí)際情況和考慮將來的發(fā)展,實(shí)現(xiàn)縣級購電方式的通存。現(xiàn)金整理分成城鎮(zhèn)現(xiàn)金整理和農(nóng)村 現(xiàn)金整理,兩種。分別負(fù)責(zé)處理城鎮(zhèn)和農(nóng)村的業(yè)務(wù)。
3營業(yè)出納
主要負(fù)責(zé)審核各個現(xiàn)金整理員、收款員收取的各種款項(xiàng)。并負(fù)責(zé)將款項(xiàng)入帳、存入銀行。完成于會計(jì)的財(cái)務(wù)交接。業(yè)務(wù)說明:營業(yè)出納員負(fù)責(zé)監(jiān)督、核對每日現(xiàn)金整理員的業(yè)務(wù)數(shù)據(jù)。并負(fù)責(zé)處理日常的營業(yè)中的各種財(cái)務(wù)業(yè)務(wù)。如電費(fèi)劃撥等。
⑴當(dāng)日業(yè)務(wù):審核當(dāng)日的現(xiàn)金整理交接的日結(jié)帳數(shù)據(jù)。并制作憑證。
⑵其它款項(xiàng)入賬:主要用于對系統(tǒng)(除購電款、雜項(xiàng)費(fèi)、特權(quán)業(yè)務(wù)數(shù)據(jù))外的各種款項(xiàng),輸入到營業(yè)財(cái)務(wù)系統(tǒng)中。
⑶帳戶管理:主要用于設(shè)置與銀行有關(guān)的各種數(shù)據(jù)。①銀行數(shù)據(jù):銀行的編號、名稱等各種信息
②帳戶數(shù)據(jù):賬戶編號、名稱類型、種類、狀態(tài)等各種信息
⑷支票管理:主要用于查詢支票的各種數(shù)據(jù)。包括支票的金額,到賬等情況。
①日交接:當(dāng)每日的業(yè)務(wù)結(jié)束后,出納員需要打印出出納員業(yè)務(wù)交接表,交予營業(yè)會計(jì)。營業(yè)會計(jì)根據(jù)“出納業(yè)務(wù)交接單”和會計(jì)系統(tǒng)中的數(shù)據(jù)進(jìn)行核對。完成業(yè)務(wù)的日交接。
⑸帳戶查詢: ①營業(yè)會計(jì): 主要負(fù)責(zé)審核、會計(jì)、現(xiàn)金整理的各種款項(xiàng)和日常業(yè)務(wù)。每日業(yè)務(wù):營業(yè)會計(jì)主要負(fù)責(zé)審核現(xiàn)金整理、營業(yè)出納的各種數(shù)據(jù)。
②日常業(yè)務(wù)審核:主要監(jiān)督現(xiàn)金整理、營業(yè)出納的日常工作。
六、領(lǐng)導(dǎo)網(wǎng)上辦公系統(tǒng)
1為領(lǐng)導(dǎo)提供對營業(yè)數(shù)據(jù)查詢、內(nèi)部工作人員情況查詢。提供方便。程序的功能簡介,主要是以下面功能:查詢各種數(shù)據(jù);
⑴查詢客服數(shù)據(jù); ⑵查詢發(fā)行數(shù)據(jù); ⑶查詢基礎(chǔ)檔案數(shù)據(jù); ⑷查詢特權(quán)數(shù)據(jù); ⑸查詢營業(yè)統(tǒng)計(jì)數(shù)據(jù); ⑹供電所查詢。2領(lǐng)導(dǎo)匯簽
七、特權(quán)業(yè)務(wù):功能概述
特權(quán)業(yè)務(wù)模塊是用電營業(yè)中處理日常業(yè)務(wù)不可或缺的一項(xiàng)內(nèi)容,可以解決企業(yè)同用電客戶之間的矛盾,促進(jìn)電力企業(yè)的管理更加合理、規(guī)范;同時可以解決人為因素造成的問題,增加電力企業(yè)的形象,提高企業(yè)的信譽(yù)。
1功能簡介 ⑴業(yè)務(wù)申請
特權(quán)業(yè)務(wù)申請,內(nèi)容包括特權(quán)業(yè)務(wù)所涉及的全部: ①退款業(yè)務(wù) ②轉(zhuǎn)帳業(yè)務(wù) ③退補(bǔ)業(yè)務(wù) ④減免違約金業(yè)務(wù) ⑤撤帳業(yè)務(wù) ⑥數(shù)據(jù)查詢 ⑦密碼修改
八、營業(yè)統(tǒng)計(jì)使用說明
本營業(yè)統(tǒng)計(jì)程序主要是以報(bào)表的形式,為電業(yè)局各有關(guān)部門提供所需要的各種營業(yè)統(tǒng)計(jì)上的數(shù)據(jù)。本營業(yè)統(tǒng)計(jì)程序主要是以報(bào)表的形式,為電業(yè)局各有關(guān)部門提供所需要的各種營業(yè)統(tǒng)計(jì)上的數(shù)據(jù)。
本程序共提供了16張報(bào)表,和操作員密碼修改功能.報(bào)表查詢的方式有兩種,一種是右鍵快捷菜單查詢,一種是編輯框輸入查詢。
1系統(tǒng)安全性的特點(diǎn)
系統(tǒng)數(shù)據(jù)安全的保證,系統(tǒng)對工作人員的工作過程,工作中所操作的數(shù)據(jù)、時間、地點(diǎn)等進(jìn)行記載,同時對操作前數(shù)據(jù)進(jìn)行存檔,防止數(shù)據(jù)的丟失。
服務(wù)器采用RED HAT linux9操作系統(tǒng),采用RAID進(jìn)行鏡 像,數(shù)據(jù)庫為oracle8i數(shù)據(jù)庫。
2系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)
在局內(nèi)利用雙絞線建立局域網(wǎng),局內(nèi)與縣內(nèi)的客戶服務(wù)中心利用光纖聯(lián)網(wǎng),局內(nèi)與各鄉(xiāng)鎮(zhèn)采用VPN進(jìn)行聯(lián)網(wǎng)。
3系統(tǒng)作用
⑴提高工作效率:利用計(jì)算機(jī)、網(wǎng)絡(luò)建立的企業(yè)網(wǎng),實(shí)現(xiàn)營業(yè)系統(tǒng)的辦公自動化。實(shí)現(xiàn)數(shù)據(jù)分組共享。是各個工作人員對當(dāng)前的自己的工作情況有詳細(xì)的了解,正確的把握自己的工作節(jié)奏。
⑵工作質(zhì)量:由于系統(tǒng)對每個人的工作進(jìn)行詳細(xì)的分工,將責(zé)任落實(shí)到人。加強(qiáng)每個人的責(zé)任感。每個人的工作的情況等其他人能看到,領(lǐng)導(dǎo)對每個工作人員的情況做到心中有數(shù)。
⑶阻塞管理漏洞:在對工作細(xì)化的基礎(chǔ)上,加強(qiáng)工作的透明度,使每個人能按章辦事。減少人為因素。
作者系延壽縣電業(yè)局計(jì)算機(jī)助理工程師
第二篇:學(xué)生信息管理系統(tǒng)
摘 要
隨著網(wǎng)絡(luò)通信技術(shù)的迅速發(fā)展和信息技術(shù)的廣泛應(yīng)用,計(jì)算機(jī)的應(yīng)用已普及到經(jīng)濟(jì)和社會生活的各個領(lǐng)域。教育領(lǐng)域也不例外,現(xiàn)今已經(jīng)出現(xiàn)了各種遠(yuǎn)程網(wǎng)絡(luò)在線教育系統(tǒng)、圖書館管理系統(tǒng)、學(xué)生信息管理系統(tǒng)等。其中學(xué)生信息管理是任一院校都不可缺少的部分,它的內(nèi)容對于學(xué)校的決策者和教學(xué)管理者來說都至關(guān)重要,而傳統(tǒng)的人工管理方式效率較低,為數(shù)據(jù)的查詢、更新和維護(hù)帶來了極大的不便。所以學(xué)生信息管理信息系統(tǒng)的開發(fā)和應(yīng)用是必要的,它能夠?yàn)楣芾砣藛T提供充足的信息和快捷的查詢手段,提高學(xué)校對學(xué)生信息的管理效率。
本文的學(xué)生信息管理系統(tǒng)是基于java語言的,它能夠提供學(xué)生信息管理功能,方便系統(tǒng)管理員對學(xué)生學(xué)號、班級等信息的添加、修改、刪除、查詢等操作,同時可以一樣方便的對學(xué)生的信息進(jìn)行查詢。本系統(tǒng)也主要利用java語言和access實(shí)現(xiàn),因此它具有很強(qiáng)的可移植性,很方便。
關(guān)鍵字: 學(xué)生信息 管理系統(tǒng)
添加 刪除 查詢 修改
Abstract With the rapid development of network communication technology and extensive application of information technology, computer applications have spread to the economic and social life in various fields.The field of education is no exception, now there have been a variety of remote network online education system, library management system, student information management system.Which is either a student information management schools are an indispensable part of its contents and teaching for school managers, policy-makers are essential, and the traditional manual management inefficient for data query, update and maintenance brought great inconvenience.So the student information management system development and application of information is necessary, it is able to provide managers with sufficient information and quick inquiry means to improve school student information management efficiency.This student information management system is based on the java language, it is able to provide students with information management function to facilitate system administrators to students student number, class and other information to add, modify, delete, query and other operations, but can be just as convenient for students information to search.This system is mainly achieved using java language and access, so it is very portable, very convenient.Keywords: Student Information Management System add delet revise
前言
隨著計(jì)算機(jī)技術(shù)的飛速發(fā)展,信息時代的到來,信息改變了我們這個社會。學(xué)校在管理、教學(xué)、辦公各個方面也在悄悄地變化。一個學(xué)校的信息化程度體現(xiàn)在將計(jì)算器與信息技術(shù)應(yīng)用于教學(xué)與管理,以現(xiàn)代化工具代替?zhèn)鹘y(tǒng)手工作業(yè)。無疑,使用信息化管理使教學(xué)更先進(jìn)、辦公更高效、管理更科學(xué),信息交流更迅速。
學(xué)生成績管理系統(tǒng)是一個教育單位不可缺少的部分,它的內(nèi)容對于學(xué)校的決策者和管理者來說都至關(guān)重要,所以學(xué)生成績信息管理系統(tǒng)應(yīng)該能夠?yàn)橛脩籼峁┏渥愕男畔⒑涂旖莸牟樵兪侄巍5恢币詠砣藗兪褂脗鹘y(tǒng)人工的方式管理文件檔案,這種管理方式存在著許多缺點(diǎn),如:效率低、保密性差,另外時間一長,將產(chǎn)生大量的文件和數(shù)據(jù),這對于查找、更新和維護(hù)都帶來了不少的困難。
作為計(jì)算機(jī)應(yīng)用的一部分,使用計(jì)算機(jī)對學(xué)生成績信息進(jìn)行管理,具有著手工管理所無法比擬的優(yōu)點(diǎn).例如:檢索迅速、查找方便、可靠性高、存儲量大、保密性好、壽命長、成本低等。這些優(yōu)點(diǎn)能夠極大地提高學(xué)生檔案管理的效率,也是企業(yè)的科學(xué)化、正規(guī)化管理,與世界接軌的重要條件。
因此,開發(fā)這樣一套管理軟件成為很有必要的事情,故決定選擇學(xué)生成績管理系統(tǒng)來作為本人的畢業(yè)設(shè)計(jì),在很短的時間里開發(fā)出一套界面友好,功能強(qiáng)大,使用簡單的適用于各規(guī)模學(xué)院的學(xué)生成績管理系統(tǒng)。該學(xué)生成績管理系統(tǒng)能有效的處理在校學(xué)生的成績管理,具有成績輸入、成績查詢、成績統(tǒng)計(jì)及打印功能。
學(xué)生成績管理系統(tǒng)可以實(shí)施應(yīng)用在各中、大、小院校中,適用范圍很廣,應(yīng)用性強(qiáng)。隨著系統(tǒng)實(shí)施的日益成熟,最終會使單機(jī)作業(yè)為主的教學(xué)管理活動提高到這個平臺上來,從而實(shí)現(xiàn)學(xué)校學(xué)生成績信息管理的辦公自動化,籍以提高辦學(xué)效率和質(zhì)量。使學(xué)校充分利用計(jì)算機(jī)所帶來的新技術(shù),為培養(yǎng)人才打下堅(jiān)實(shí)的基礎(chǔ)。
第一章 相關(guān)技術(shù)簡介
1.1 java語言簡介
Java語言是sun公司與1995年5月正式發(fā)布的程序設(shè)計(jì)語言,他的前身是sun公司為智能消費(fèi)類家用電器研究而開發(fā)的項(xiàng)目的一部分。
Java程序設(shè)計(jì)語言是新一代語言的代表,他強(qiáng)調(diào)了面向?qū)ο蟮奶匦裕梢杂脕黹_發(fā)范圍廣泛的軟件,它具有支持圖形化的用戶界面,網(wǎng)格以及數(shù)據(jù)庫連接等復(fù)雜功能。Java語言的主要特點(diǎn): 1)易于學(xué)習(xí)
Java語言很簡單,對于熟悉C++的程序設(shè)計(jì)人員更不會對其感到陌生,因 為它的語法非常接近于C++,但他同時摒棄了C++許多的復(fù)雜易混淆的功能。利用java同樣可以變質(zhì)出非常復(fù)雜的系統(tǒng),且運(yùn)行占用很少的內(nèi)存資源。2)高效率的執(zhí)行方式
Java語言的執(zhí)行方式是采用先經(jīng)過編譯器編譯,在通過解釋器解釋執(zhí)行的 方式來運(yùn)行的。他綜合了解釋性語言與編譯語言的眾多有點(diǎn),使其執(zhí)行效率較以往的程序設(shè)計(jì)語言有了大幅度的提高。3)與平臺的無關(guān)性
由于iava語言是解釋執(zhí)行的,他會被轉(zhuǎn)換成一種字節(jié)碼的“目標(biāo)程序”。因此它可以跨平臺運(yùn)行 4)分布式安全性
Java從誕生之日起就與網(wǎng)絡(luò)聯(lián)系在了一起,他強(qiáng)調(diào)網(wǎng)絡(luò)特性,內(nèi)置TCPIP,HTTP,F(xiàn)TP協(xié)議庫,便于開發(fā)網(wǎng)上應(yīng)用系統(tǒng)。5)豐富的API文檔和類庫
Java為用戶提供了詳盡的API(Application Program Interface)文檔說明。
1.2 access數(shù)據(jù)庫簡介
Microsoft Office Access是微軟把數(shù)據(jù)庫引擎的圖形用戶界面和軟件開發(fā)工具結(jié)合在一起的一個數(shù)據(jù)庫管理。他擁有邏輯、流程處理,即VBA語言(VB也可以用來做邏輯處理);又可以存儲數(shù)據(jù),即在“表”中存儲數(shù)據(jù)。
第二章 系統(tǒng)分析
2.1 系統(tǒng)分析
學(xué)生信息管理系統(tǒng),可用于學(xué)校等機(jī)構(gòu)的學(xué)生信息管理,查詢,更新與維護(hù),使用方便,易用性強(qiáng),圖形界面清晰明了。該軟件用java語言編寫,用access數(shù)據(jù)庫作為后臺的數(shù)據(jù)庫進(jìn)行信息的存儲,用SQL語句完成學(xué)生學(xué)籍信息的添加,查詢,修改,刪除的操作以及成績的錄入,修改,刪除等。用ODBC驅(qū)動實(shí)現(xiàn)前臺Java與后臺SQL數(shù)據(jù)庫的連接。Java語言跨平臺性強(qiáng),可以在windows,linux,ubuntu等系統(tǒng)下使用,方便簡單,安全性好。
本《學(xué)生管理系統(tǒng)》具有對學(xué)生進(jìn)行學(xué)籍管理的功能。并于數(shù)據(jù)庫相連接,能夠?qū)W(xué)生的學(xué)號、姓名、性別、班級、專業(yè)進(jìn)行查詢、添加和刪除等,簡捷方便,容易使用。2.2 應(yīng)解決的問題
2.2.1合理的設(shè)計(jì)數(shù)據(jù)庫
盡量合理地減少數(shù)據(jù)庫數(shù)據(jù)的冗余,使重復(fù)的數(shù)據(jù)保持在最小限度,這樣將不必要的多占用存儲空間,減少產(chǎn)生混亂影響的危險(xiǎn),還能提高計(jì)算機(jī)的運(yùn)行速度。作為學(xué)生成績管理系統(tǒng),必須能解決以下方面的問題:能錄入信息。
在開發(fā)學(xué)生信息管理系統(tǒng)時,最重要的就是學(xué)生的基本信息,其學(xué)生信息表E-R圖如圖2.1所示。
圖 2.1 學(xué)生信息E-R圖
2.2.2設(shè)計(jì)出友好的界面
界面的友好與否是用戶評價(jià)一個軟件優(yōu)劣的重要方面。因?yàn)樵撓到y(tǒng)涉及到
學(xué)生成績的真實(shí)性,所以該系統(tǒng)要具有一定的保密性和權(quán)限控制,首先應(yīng)設(shè)計(jì)一個用戶的登陸窗口界面,要求只能由特定的人員對該系統(tǒng)進(jìn)行操作。此外還應(yīng)設(shè)計(jì)登陸后系統(tǒng)的主窗口,要求能夠顯示學(xué)生成績的基本信息,可以實(shí)現(xiàn)數(shù)據(jù)的錄入,更新,刪除、查詢、統(tǒng)計(jì)等功能。
另外窗口界面要多用按鈕,少用菜單,窗口的各個控鍵布局要合理,美觀。要充分的利用java.awt和java.swing提供的強(qiáng)大的功能,多用窗口和控件,充分體現(xiàn)窗口的多元化格局。
2.2.3實(shí)現(xiàn)的基本功能
該系統(tǒng)要求除了能實(shí)現(xiàn)信息的錄入,刪除,插入,更新,數(shù)據(jù)導(dǎo)出excel文件等基本功能之外,還要求能夠根據(jù)用戶的需要進(jìn)行操作。例如要查詢學(xué)生成績,要求可以按照專業(yè)、班級等多種方式查詢。這些功能基本上能滿足用戶操作的需要,這樣用戶操作起來就更簡單方便。部分文本框使用了下拉式,使用戶可以不用花費(fèi)大量的時間去輸入信息。
2.3 數(shù)據(jù)庫物理設(shè)計(jì) 1.1.1 3.3.1數(shù)據(jù)庫物理設(shè)計(jì)
本系統(tǒng)采用Access數(shù)據(jù)庫管理系統(tǒng)作為后臺數(shù)據(jù)庫的開發(fā)工具,設(shè)計(jì)的表結(jié)構(gòu)如下:
第三章 程序代碼及運(yùn)行效果
3.1主類代碼:
/*主類代碼*/ package kcsj;import java.awt.*;import javax.swing.*;import java.awt.event.*;
import javax.swing.border.*;import javax.swing.JOptionPane;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.table.DefaultTableCellRenderer;import javax.swing.table.DefaultTableModel;import javax.swing.table.TableColumn;import java.sql.*;import java.awt.GridLayout;public class myStudent { public myStudent(){
}
public static void main(String[] args){ // TODO code application logic here loginFrame lf=new loginFrame();Font ft=new Font(“Serif”,Font.BOLD,18);lf.setVisible(true);lf.addWindowListener(new WindowAdapter(){ public void windowClosing(WindowEvent e){
System.exit(0);} });} }
3.2 登陸: public loginFrame(){
p=new JPanel();
user=new JTextField(10);
pass=new JPasswordField(10);
login=new JButton(“登錄”);
cancel=new JButton(“退出”);
p.setBackground(Color.lightGray);
//user.setText(“王明玉”);
//pass.setText(“123456”);
login.addActionListener(this);
cancel.addActionListener(this);
p.add(new JLabel(“學(xué)生信息管理系統(tǒng)登錄”));
p.add(new JLabel(“賬號:”));
p.add(user);
p.add(new JLabel(“密碼:”));
p.add(pass);
p.add(login);
p.add(cancel);
this.add(p);
this.setTitle(“學(xué)生管理系統(tǒng)登錄界面”);
this.setSize(180,160);}
public void actionPerformed(ActionEvent e){
//查找
if(e.getSource()==login){
if(user.getText().toString().equals(“")){
JOptionPane.showMessageDialog(null, ”請輸入用戶名“, ”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
}else if(pass.getText().toString().equals(”“)){
JOptionPane.showMessageDialog(null, ”請輸入密碼“, ”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
}else{
myConnection conn=new myConnection();
ResultSet rs;
String sql=”select * from admin where 用戶名 = '“+user.getText().toString()+”' and 密碼 = '“+pass.getText().toString()+”'“;
try{
rs=conn.getResult(sql);
if(rs.next()){
this.dispose();
//JOptionPane.showMessageDialog(null, ”此用戶已經(jīng)存在“, ”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
sql=”select * from student“;
mainFrame mf=new mainFrame();
mf.setTitle(”西北師范大學(xué)學(xué)生信息管理系統(tǒng)“);
mf.setSize(600,486);
mf.freshTable(sql);
mf.setVisible(true);
mf.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
});
}else{
JOptionPane.showMessageDialog(null, ”用戶名或密碼錯誤“, ”登錄失敗“, JOptionPane.INFORMATION_MESSAGE);
}
}catch(Exception er){
System.out.println(er.toString());
}
}
//全部顯示
}if(e.getSource()==cancel){
System.exit(0);
} } } 登陸界面:
3.3 修改數(shù)據(jù):
/*修改數(shù)據(jù)*/ class editFrame extends JDialog implements ActionListener{ public static final int WIDTH = 400;public static final int HEIGHT = 400;
JLabel 學(xué)號1,姓名1,性別1,民族1,年齡1,年級1,班級1,專業(yè)1;JTextField 學(xué)號,姓名,性別,民族,年齡,年級,班級,專業(yè);JButton b;JPanel p;
mainFrame mf;
public editFrame(mainFrame mmf){ setTitle(”修改學(xué)生信息“);setSize(WIDTH,HEIGHT);setLocation(120,180);
Container contentPane = getContentPane();contentPane.setLayout(new FlowLayout());
學(xué)號1=new JLabel(”學(xué)號“);姓名1=new JLabel(”姓名“);性別1=new JLabel(”性別“);民族1=new JLabel(”民族“);年齡1=new JLabel(”年齡“);年級1=new JLabel(”年級“);班級1=new JLabel(”班級“);
專業(yè)1=new JLabel(”專業(yè)“);
學(xué)號=new JTextField(5);姓名=new JTextField(5);性別=new JTextField(5);民族=new JTextField(5);年齡=new JTextField(5);年級=new JTextField(5);班級=new JTextField(10);專業(yè)=new JTextField(10);學(xué)號.setEnabled(false);b=new JButton(”確定“);p=new JPanel();p.setLayout(new GridLayout(10,2,5,5));p.add(學(xué)號1);p.add(學(xué)號);p.add(姓名1);p.add(姓名);p.add(性別1);p.add(性別);p.add(民族1);p.add(民族);p.add(年齡1);p.add(年齡);p.add(年級1);p.add(年級);p.add(班級1);p.add(班級);p.add(專業(yè)1);p.add(專業(yè));p.add(new Label(”“));p.add(new Label(”“));p.add(b);contentPane.add(p);//添加按鈕監(jiān)聽器
b.addActionListener(this);mf=mmf;}
public void actionPerformed(ActionEvent e){
if(學(xué)號.getText().toString().equals(”“)){
JOptionPane.showMessageDialog(null,”請輸入學(xué)號“,”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
}else if(姓名.getText().toString().equals(”“)){
JOptionPane.showMessageDialog(null,”請輸入姓名“,”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
}else if(年齡.getText().toString().equals(”“)){
JOptionPane.showMessageDialog(null,”請輸入年齡“,”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
}else{
String sql=”update student set 姓名='“+姓名.getText()+”',性別='“+性別.getText()+”',年齡=“+年齡.getText()+”,年級='“+年級.getText()+”',班級='“+班級.getText()+”',專業(yè)='“+專業(yè).getText()+”',民族='“+民族.getText()+”' where 學(xué)號='“ + 學(xué)號.getText()+ ”'“;
myConnection conn=new myConnection();
try{
//JOptionPane.showMessageDialog(null, sql, ”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
if(conn.executeSql(sql)){
JOptionPane.showMessageDialog(null, ”修改成功“, ”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
mf.freshTable(”select * from student“);
this.dispose();
}else{
JOptionPane.showMessageDialog(null, ”修改失敗“, ”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
}
}catch(Exception er){
System.out.println(er.toString());
}
}
}
}
3.4 查找數(shù)據(jù):
class findFrame extends JDialog implements ActionListener{
mainFrame mf;JPanel p;JComboBox c;JTextField t;JButton b;JButton fAll;String sql=”select * from student“;String[] colStr={”學(xué)號“,”姓名“,”性別“,”民族“,”年齡“,”年級“,”班級“,”專業(yè)“};
public findFrame(mainFrame mmf){
mf=mmf;
p=new JPanel();
c=new JComboBox(colStr);
t=new JTextField(10);
b=new JButton(”查找“);
fAll=new JButton(”全部顯示“);
b.addActionListener(this);
fAll.addActionListener(this);
p.add(new JLabel(”選擇“));
p.add(c);
p.add(new JLabel(”查找內(nèi)容“));
p.add(t);
p.add(b);
p.add(fAll);
this.add(p);
this.setTitle(”查找“);
this.setSize(450,80);}
public void actionPerformed(ActionEvent e){
//查找
if(e.getSource()==b){
String selectStr=c.getSelectedItem().toString();
if(selectStr==”年齡“){
sql=”select * from student where “+selectStr+” “+t.getText().toString();
}
else {
sql=”select * from student where “+selectStr+” '“+t.getText().toString()+”'“;
= = 12
}
mf.freshTable(sql);
//全部顯示
}if(e.getSource()==fAll){
sql=”select * from student“;
mf.freshTable(sql);
} } }
3.5 添加數(shù)據(jù):
class addFrame extends JDialog implements ActionListener{ public static final int WIDTH = 400;public static final int HEIGHT = 400;
JLabel 學(xué)號1,姓名1,性別1,民族1,年齡1,年級1,班級1,專業(yè)1;JTextField 學(xué)號,姓名,性別,民族,年齡,年級,班級,專業(yè);JButton b;JPanel p;
mainFrame mf;
public addFrame(mainFrame mmf){ setTitle(”修改學(xué)生信息“);setSize(WIDTH,HEIGHT);setLocation(120,180);
Container contentPane = getContentPane();//contentPane.setBackground(Color.BLACK);//設(shè)置窗口顏色
contentPane.setLayout(new FlowLayout());
學(xué)號1=new JLabel(”學(xué)號“);
姓名1=new JLabel(”姓名“);
性別1=new JLabel(”性別“);
民族1=new JLabel(”民族“);
年齡1=new JLabel(”年齡“);
年級1=new JLabel(”年級“);
班級1=new JLabel(”班級“);
專業(yè)1=new JLabel(”專業(yè)“);
學(xué)號=new JTextField(”201071030240“,5);
姓名=new JTextField(5);
性別=new JTextField(”女“,5);
民族=new JTextField(5);
年齡=new JTextField(5);
年級=new JTextField(5);
班級=new JTextField(10);
專業(yè)=new JTextField(10);
b=new JButton(”確定“);p=new JPanel();p.setLayout(new GridLayout(10,2,5,5));p.add(學(xué)號1);p.add(學(xué)號);p.add(姓名1);p.add(姓名);p.add(性別1);p.add(性別);p.add(民族1);p.add(民族);p.add(年齡1);p.add(年齡);p.add(年級1);p.add(年級);p.add(班級1);p.add(班級);p.add(專業(yè)1);p.add(專業(yè));p.add(new Label(”“));p.add(new Label(”“));p.add(b);contentPane.add(p);//添加按鈕監(jiān)聽器
b.addActionListener(this);mf=mmf;}
public void actionPerformed(ActionEvent e){
if(學(xué)號.getText().toString().equals(”“)){
JOptionPane.showMessageDialog(null, ”請輸入學(xué)號“, ”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
}else if(姓名.getText().toString().equals(”“)){
JOptionPane.showMessageDialog(null, ”請輸入姓名“, ”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
}else if(年齡.getText().toString().equals(”“)){
JOptionPane.showMessageDialog(null, ”請輸入年齡“, ”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
}else{
String sql=”select * from student where 學(xué)號='“ + 學(xué)號.getText()+ ”'“;
myConnection conn=new myConnection();
ResultSet rs;
rs=conn.getResult(sql);
try{
//System.out.println(rs.getRow());
if(rs.next()){
JOptionPane.showMessageDialog(null, ”此學(xué)號已經(jīng)存在“, ”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
}else{
sql=”insert into student values('“ +學(xué)號.getText()+”','“+ 姓名.getText()+”','“+ 性別.getText()+”','“+ 民族.getText()+”',“+ 年齡.getText()+”,'“+ 年級.getText()+”','“+ 班級.getText()+”','“+ 專業(yè).getText()+”')“;
if(conn.executeSql(sql)){
JOptionPane.showMessageDialog(null, ”添加成功“, ”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
mf.freshTable(”select * from student“);
學(xué)號.setText(”“);
姓名.setText(”“);
性別.setText(”“);
民族.setText(”“);
年齡.setText(”“);
年級.setText(”“);
班級.setText(”“);
專業(yè).setText(”“);
}else{
JOptionPane.showMessageDialog(null, ”添加失敗“, ”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
}
}
}catch(Exception er){
System.out.println(er.toString());
}
}
}
}
3.6 修改數(shù)據(jù):
class editFrame extends JDialog implements ActionListener{ public static final int WIDTH = 400;public static final int HEIGHT = 400;
JLabel 學(xué)號1,姓名1,性別1,民族1,年齡1,年級1,班級1,專業(yè)1;JTextField 學(xué)號,姓名,性別,民族,年齡,年級,班級,專業(yè);JButton b;JPanel p;
mainFrame mf;
public editFrame(mainFrame mmf){ setTitle(”修改學(xué)生信息“);setSize(WIDTH,HEIGHT);setLocation(120,180);
Container contentPane = getContentPane();contentPane.setLayout(new FlowLayout());
學(xué)號1=new JLabel(”學(xué)號“);
姓名1=new JLabel(”姓名“);
性別1=new JLabel(”性別“);
民族1=new JLabel(”民族“);
年齡1=new JLabel(”年齡“);
年級1=new JLabel(”年級“);
班級1=new JLabel(”班級“);
專業(yè)1=new JLabel(”專業(yè)“);
學(xué)號=new JTextField(5);
姓名=new JTextField(5);
性別=new JTextField(5);
民族=new JTextField(5);
年齡=new JTextField(5);
年級=new JTextField(5);
班級=new JTextField(10);
專業(yè)=new JTextField(10);
學(xué)號.setEnabled(false);
b=new JButton(”確定“);p=new JPanel();p.setLayout(new GridLayout(10,2,5,5));p.add(學(xué)號1);p.add(學(xué)號);
p.add(姓名1);p.add(姓名);p.add(性別1);p.add(性別);p.add(民族1);p.add(民族);p.add(年齡1);p.add(年齡);p.add(年級1);p.add(年級);p.add(班級1);p.add(班級);p.add(專業(yè)1);p.add(專業(yè));p.add(new Label(”“));p.add(new Label(”“));p.add(b);contentPane.add(p);//添加按鈕監(jiān)聽器
b.addActionListener(this);mf=mmf;}
public void actionPerformed(ActionEvent e){
if(學(xué)號.getText().toString().equals(”“)){
JOptionPane.showMessageDialog(null, ”請輸入學(xué)號“, ”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
}else if(姓名.getText().toString().equals(”“)){
JOptionPane.showMessageDialog(null, ”請輸入姓名“, ”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
}else if(年齡.getText().toString().equals(”“)){
JOptionPane.showMessageDialog(null, ”請輸入年齡“, ”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
}else{
String sql=”update student set 姓名='“+姓名.getText()+”',性別='“+性別.getText()+”',年齡=“+年齡.getText()+”,年級='“+年級.getText()+”',班級='“+班級.getText()+”',專業(yè)='“+專業(yè).getText()+”',民族='“+民族.getText()+”' where 學(xué)號='“ + 學(xué)號.getText()+ ”'“;
myConnection conn=new myConnection();
try{
//JOptionPane.showMessageDialog(null, sql, ”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
if(conn.executeSql(sql)){
JOptionPane.showMessageDialog(null, ”修改成功“, ”溫馨提示“, JOptionPane.INFORMATION_MESSAGE);
mf.freshTable(”select * from student“);
this.dispose();
}else{
JOptionPane.showMessageDialog(null, ”修改失敗“, ”溫馨提示", JOptionPane.INFORMATION_MESSAGE);
}
}catch(Exception er){
System.out.println(er.toString());
}
} } }
運(yùn)行效果:
第四章 總結(jié)
通過本次課程設(shè)計(jì),不僅讓我更深入的了解JAVA這門學(xué)科,更使自己有了繼續(xù)探索的興趣。
對我來說,在之前的學(xué)習(xí)過程中沒有能夠很好的掌握J(rèn)AVA語言的學(xué)習(xí),在很多地方還有生疏和遺漏,并且在此次課程設(shè)計(jì)過程中也遇到困難不能自己獨(dú)立解決。但是,通過這次程序設(shè)計(jì),除了增加了自己的編程能力,提高了我對JAVA的應(yīng)用能力,同時我也深感“認(rèn)真嚴(yán)謹(jǐn)”這個詞的重要性,一點(diǎn)點(diǎn)小的馬虎,便會導(dǎo)致整個程序不能正常運(yùn)行。在今后的學(xué)習(xí)中,我將繼續(xù)保持嚴(yán)謹(jǐn)?shù)膶W(xué)習(xí)態(tài)度。與此同時,在同學(xué)的幫助下,讓我體會到了相互學(xué)習(xí)的重要性,而更讓人難以忘懷的是在熱烈討論問題時,那激情橫溢的場面。總之,此次課程設(shè)計(jì)讓我獲益匪淺。
第五章 總結(jié)
課程設(shè)計(jì)是培養(yǎng)學(xué)生綜合運(yùn)用所學(xué)知識,發(fā)現(xiàn),提出,分析和解決實(shí)際問題,鍛煉實(shí)踐能力的重要環(huán)節(jié),是對學(xué)生實(shí)際工作能力的具體訓(xùn)練和考察過程.本次課程設(shè)計(jì)雖然很辛苦,實(shí)在是受益匪淺。本來這門課的知識學(xué)的就不夠扎實(shí),本次課程設(shè)計(jì),在設(shè)計(jì)過程中碰到了很多問題,剛開始要設(shè)計(jì)的時候,還真不知道從哪里下手但最終在圖書、同學(xué)和老師的幫助下都得到了解決,讓我學(xué)會了好多書本上沒有的東西,通過本次課程設(shè)計(jì)我也能將課本上的知識融會貫通,起到了很好的輔助學(xué)習(xí)的效果,但是我發(fā)現(xiàn)我學(xué)到的知識比整整一個學(xué)期學(xué)到的都多。理
論和實(shí)踐的相結(jié)合是學(xué)習(xí)最有效的方法。在設(shè)計(jì)的過程中發(fā)現(xiàn)了自己的不足之處,對以前所學(xué)過的知識理解得不夠深刻,掌握得不夠牢固,通過這次課程設(shè)計(jì)之后,一定把以前所學(xué)過的知識重新溫故。
通過這次課程設(shè)計(jì)使我懂得了理論與實(shí)際相結(jié)合是很重要的,只有理論知識是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識與實(shí)踐相結(jié)合起來,從理論中得出結(jié)論,才能真正為社會服務(wù),從而提高自己的實(shí)際動手能力和獨(dú)立思考的能力。
第六章 參考文獻(xiàn)
第三篇:學(xué)生信息管理系統(tǒng)
–––––––––––––––––摘 要–––––––––––––––––
學(xué)生信息管理系統(tǒng)是典型的信息管理系統(tǒng)(MIS),其開發(fā)主要包括后臺數(shù)據(jù)庫的建立和維護(hù)以及前端應(yīng)用程序的開發(fā)兩個方面。對于前者要求建立起數(shù)據(jù)一致性和完整性強(qiáng)、數(shù)據(jù)安全性好的庫。而對于后者則要求應(yīng)用程序功能完備,易使用等特點(diǎn)。
經(jīng)過分析,我們使用MICROSOFT公司的VISUAL BASIC開發(fā)工具,利用其提供的各種面向?qū)ο蟮拈_發(fā)工具,尤其是數(shù)據(jù)窗口這一能方便而簡潔操縱數(shù)據(jù)庫的智能化對象,首先在短時間內(nèi)建立系統(tǒng)應(yīng)用原型,然后,對初始原型系統(tǒng)進(jìn)行需求迭代,不斷修正和改進(jìn),直到形成用戶滿意的可行系統(tǒng)。
關(guān)鍵字:控件、窗體、域、數(shù)據(jù)庫。
–––––––––––––––––前言–––––––––––––––––
隨著學(xué)校的規(guī)模不斷擴(kuò)大,學(xué)生數(shù)量急劇增加,有關(guān)學(xué)生的各種信息量也成倍增長。面對龐大的信息量需要有學(xué)生管理系統(tǒng)來提高學(xué)生管理工作的效率。通過這樣的系統(tǒng)可以做到信息的規(guī)范管理、科學(xué)統(tǒng)計(jì)和快速查詢、修改、增加、刪除等,從而減少管理方面的工作量。
本系統(tǒng)主要用于學(xué)校學(xué)生信息管理,總體任務(wù)是實(shí)現(xiàn)學(xué)生信息關(guān)系的系統(tǒng)化、規(guī)范化和自動化,其主要任務(wù)是用計(jì)算機(jī)對學(xué)生各種信息進(jìn)行日常管理,如查詢、修改、增加、刪除,另外還考慮到學(xué)生選課,針對這些要求設(shè)計(jì)了學(xué)生信息管理系統(tǒng)本系統(tǒng)主要用于學(xué)校學(xué)生信息管理,總體任務(wù)是實(shí)現(xiàn)學(xué)生信息關(guān)系的系統(tǒng)化、規(guī)范化和自動化,其主要任務(wù)是用計(jì)算機(jī)對學(xué)生各種信息進(jìn)行日常管理,如查詢、修改、增加、刪除,另外還考慮到學(xué)生選課,針對這些要求設(shè)計(jì)了學(xué)生信息管理系統(tǒng)。
本系統(tǒng)主要包括學(xué)生信息查詢、教務(wù)信息維護(hù)和學(xué)生選課三部分。其功能主要有: ⒈有關(guān)學(xué)籍等信息的輸入,包括輸入學(xué)生基本信息、所在班級、所學(xué)課程和成績等。⒉學(xué)生信息的查詢,包括查詢學(xué)生基本信息、所在班級、已學(xué)課程和成績等。⒊學(xué)生信息的修改。
⒋班級管理信息的輸入,包括輸入班級設(shè)置、年級信息等。⒌班級管理信息的查詢。⒍班級管理信息的修改。⒎學(xué)生課程的設(shè)置和修改。
目 錄
前言
第一章 Visual Basic 概述 1.1 Visual Basic 語言的特點(diǎn)
1.2 Visual Basic 系統(tǒng)幾個程序應(yīng)用中的常用名詞 第二章 Windows 下的Visual Basic 編程環(huán)境簡介 2.1 面對對象的編程 2.2 實(shí)現(xiàn)菜單選項(xiàng) 2.3 實(shí)現(xiàn)工具欄
第三章 怎樣開發(fā)一個學(xué)生信息管理系統(tǒng)的查詢模塊 3.1 學(xué)生信息系統(tǒng)的設(shè)計(jì)分析 3.2 編程環(huán)境的選擇 3.3 關(guān)系型數(shù)據(jù)庫的實(shí)現(xiàn) 3.4 二者的結(jié)合(DBA)第四章 使用Access2000 創(chuàng)建數(shù)據(jù)庫 4.1 數(shù)據(jù)庫的概念 4.2 新建一個數(shù)據(jù)庫 4.3 修改已建的數(shù)據(jù)庫 第五章 可行性分析 第六章 系統(tǒng)總體規(guī)劃 6.1 系統(tǒng)功能 6.2 系統(tǒng)流程圖 第七章 系統(tǒng)具體實(shí)現(xiàn) 7.1 各功能的實(shí)現(xiàn) 7.1.1 課程管理 7.1.2 打印統(tǒng)計(jì) 結(jié)束語 后記 主要參考文獻(xiàn)
第一章 Visual Basic 概述 1.1 Visual Basic 語言的特點(diǎn)
Visual Basic 語言用其設(shè)計(jì)應(yīng)用程序時具有兩個基本特點(diǎn):可視化設(shè)計(jì)和事件驅(qū)動編程。(1)可視化設(shè)計(jì):表現(xiàn)在VB在設(shè)計(jì)應(yīng)用于程序界面時有“所見即所得”的處理功能。(2)事件驅(qū)動編程:在設(shè)計(jì)應(yīng)用程序時,把對象添加到窗體中,在用戶與程序進(jìn)行交互時,用戶基本上是通過鼠標(biāo)、鍵盤與應(yīng)用程序進(jìn)行交互的,那些對象就必須對鼠標(biāo)和鍵盤操作所引發(fā)的事件做出響應(yīng),來執(zhí)行一段應(yīng)用程序。1.2 Visual Basic 系統(tǒng)幾個在程序應(yīng)用中的常用名詞
Visual Basic 系統(tǒng)除了一般高級語言所具有的一些名詞術(shù)語外,還有幾個系統(tǒng)常用的名詞。其基本含義如下:(1)視窗(Form)
視窗是進(jìn)行人機(jī)交互的界面或接口,也叫窗體。VB系統(tǒng)的人機(jī)交互界面或接口,無論是在設(shè)計(jì)時或是在運(yùn)行時,都是Windows 系統(tǒng)的標(biāo)準(zhǔn)視窗。(2)對象(Object)
對象是VB系統(tǒng)內(nèi)部提供給設(shè)計(jì)者可以直接使用的處理輸出的控制工具。本程序所應(yīng)用到的對象類型有標(biāo)簽框(Label Box),文本框(Text Box),命令按扭(Command Button),網(wǎng)格(Data Grid),ADO控件(Adodc1)等。當(dāng)把這些工具放置到用戶界面對應(yīng)的窗體上時,被稱為對象或控件。用戶可以通過設(shè)置對象的“屬性”和“方法”,便于對象適應(yīng)自己所設(shè)計(jì)應(yīng)用程序的輸入輸出內(nèi)容,對象的生成過程及結(jié)構(gòu)都被封裝起來。正確使用對象可以減少程序和開發(fā)時間,提高程序設(shè)計(jì)者的工作效率。(3)屬性(Properties)
屬性是VB系統(tǒng)提供的有關(guān)對象的參數(shù)或數(shù)據(jù)接口。用戶通過適當(dāng)?shù)卦O(shè)置或改變對象的屬性來確定對象的外觀及性能特征,從而有效地使用系統(tǒng)提供的對象。比如,對象的名稱、在屏幕上顯示的位置、大小、顏色、接收或容納的數(shù)據(jù)內(nèi)容及數(shù)據(jù)的表現(xiàn)格式等。(4)事件(Events)
事件是指用戶或操作者對計(jì)算機(jī)進(jìn)行的某一操作(如擊鍵、單擊或移動鼠標(biāo)等)的行為或系統(tǒng)狀態(tài)發(fā)生的變化。VB系統(tǒng)常用事件來引導(dǎo)計(jì)算機(jī)執(zhí)行一段程序。程序所用的鍵盤事件有KeyPress(按鍵)事件,KeyDown事件和KeyUp事件;鼠標(biāo)事件有Click(單擊鼠標(biāo))事件,DbDlicd(雙擊鼠標(biāo))。(5)方法(Method)方法主要是指對一個對象使用某種作用的過程。它是在程序執(zhí)行的過程中要計(jì)算機(jī)執(zhí)行的某種操作。其程序的方法有Show(顯示)方法,Hide(隱藏)方法,Refresh(刷新)方法。
(6)過程(Procedure)
過程是指經(jīng)過定義或說明的,或基于某一對象對應(yīng)的事件所引發(fā)的程序段。(7)模塊(Module)
模塊是指一些運(yùn)算量或過程進(jìn)行聲明或定義的一個集合。系統(tǒng)程序大體可分成四個模塊:數(shù)據(jù)輸入、根據(jù)查詢、數(shù)據(jù)打印和通訊。
第二章 Windows下的Visual Basic 編程環(huán)境簡介 2.1 面對對象的編程
面向?qū)ο蟮脑O(shè)計(jì)方法(OOP, Objected Programming)從應(yīng)用領(lǐng)域內(nèi)的問題著手,以直觀自然的方式描述客觀世界的實(shí)體。Visual Basic 作為一種面向?qū)ο蟮木幊谭椒ǎ殉绦蚝蛿?shù)據(jù)封裝起來作為一個對象,并為每個對象賦予相應(yīng)的屬性。在設(shè)計(jì)對象時,不必編寫建立和描述每個對象的程序代碼,而是用工具畫在界面上,由 Visual Basic 自動生成對象的程序代碼并封裝起來。Visual Basic 應(yīng)用程序基本的構(gòu)建塊是用戶所創(chuàng)建的對象,每一個對象都具有一些特性和行為(屬性、事件和方法)。開發(fā)人員可以最有效利用所創(chuàng)建的每一個對象。使用應(yīng)用程序具有可通用性可說擴(kuò)展性和強(qiáng)有力的功能。
Visual Basic 應(yīng)用由一系列對象組成,包括有函數(shù)、菜單、函數(shù)、結(jié)構(gòu)和數(shù)據(jù)窗口、用戶對象、用戶事件等等,對象中又包含若干控件如命令按鈕、單行編輯器等這些對象和控件都可在許多應(yīng)用中重復(fù)使用。2.2 實(shí)現(xiàn)菜單選項(xiàng)
菜單是程序最重要的特性之一,大多數(shù)程序都依賴一個定義良好的菜單使程序易于使用和維護(hù),Visual Basic 也提供了強(qiáng)大的創(chuàng)建菜單功能是程序更加標(biāo)準(zhǔn)。
本系統(tǒng)使用 Visual Basic 的菜單編輯器建立菜單或者修改已經(jīng)存在的菜單,您也可以使用Visual Basic 的Application Wizard 來操作。2.3 實(shí)現(xiàn)工具欄
CoolBar控件與Office2000 中看到的CoolBar是類似的。CoolBar就是一個可以在窗體上浮動的工具,同時也是其他ActiveX的容器。通過在CoolBar中遷入其他空間你也可以向用戶提供更好的靈活性和義用性。
選擇“工程”下拉菜單中的“部件”選項(xiàng),顯示“部件”對話框。在“控件”選項(xiàng)卡列表中選擇“Microsoft Windows Common Controls 6.0”后工具相中增加改控件。本系統(tǒng)就用了Cool工具中的Statubar控件,在系統(tǒng)這一界面中,添加了狀態(tài)欄,在第一個欄中,在樣式這一欄中選擇了文本,在第二個欄中,選擇了系統(tǒng)日期,第三個欄中選擇了系統(tǒng)時間,這樣,任何時候操作本系統(tǒng),都可以看到當(dāng)前的時間和日期。
第三章 怎樣開發(fā)一個學(xué)生信息管理系統(tǒng)的查詢模塊? 3.1查詢模塊的設(shè)計(jì)分析
根據(jù)實(shí)際情況,我們使用原型法(Rapid Prototyping)即以少量代價(jià)快速地構(gòu)造一個可執(zhí)行的軟件模型。使用戶可以較快地確定需求,然后采用循環(huán)進(jìn)化的開發(fā)方式,對系統(tǒng)模型作連續(xù)的精化,將系統(tǒng)需具備的性質(zhì)逐漸增加上去,直到所有的性質(zhì)全部滿足。此時模塊也發(fā)展成為最終產(chǎn)品了。3.2編程環(huán)境的選擇
微軟公司的Visual Basic 6.0是Windows應(yīng)用程序開發(fā)工具,使目前最為廣泛的、易學(xué)易用的面向?qū)ο蟮拈_發(fā)工具。Visual Basic提供了大量的控件,這些控件可用于設(shè)計(jì)界面和實(shí)現(xiàn)各種功能,減少了編程人員的工作量,也簡化了界面設(shè)計(jì)過程,從而有效的提高了應(yīng)
用程序的運(yùn)行效率和可靠性。故而,實(shí)現(xiàn)本系統(tǒng)VB是一個相對較好的選擇。3.3關(guān)系型數(shù)據(jù)庫的實(shí)現(xiàn)
Access2000就是關(guān)系數(shù)據(jù)庫開發(fā)工具,數(shù)據(jù)庫能匯集各種信息以供查詢、存儲和檢索。Access的優(yōu)點(diǎn)在于它能使用數(shù)據(jù)表示圖或自定義窗體收集信息。數(shù)據(jù)表示圖提供了一種類似于Excel的電子表格,可以使數(shù)據(jù)庫一目了然。另外,Access允許創(chuàng)建自定義報(bào)表用于打印或輸出數(shù)據(jù)庫中的信息。Access也提供了數(shù)據(jù)存儲庫,可以使用桌面數(shù)據(jù)庫文件把數(shù)據(jù)庫文件置于網(wǎng)絡(luò)文件服務(wù)器,與其他用戶共享數(shù)據(jù)庫。Access 是一種關(guān)系數(shù)據(jù)庫工具,關(guān)系數(shù)據(jù)庫是已開發(fā)的最通用的數(shù)據(jù)庫之一。如上所述,Access作為關(guān)系數(shù)據(jù)庫開發(fā)具備了許多優(yōu)點(diǎn),可以在一個數(shù)據(jù)包同時擁有桌面數(shù)據(jù)庫的便利和關(guān)系數(shù)據(jù)庫的強(qiáng)大功能。3.4二者的結(jié)合(DBA)微軟的JET數(shù)據(jù)庫引擎提供了與數(shù)據(jù)庫打交道的途徑,我們是通過它以及Visual Basic來訪問數(shù)據(jù)庫并對其進(jìn)行各種操作。Visual Basic、Access以及其他微軟的軟件產(chǎn)品都是通過共用JET數(shù)據(jù)庫引擎,從而給用戶提供了豐富的數(shù)據(jù)類型。ADODC控件在數(shù)據(jù)庫中的信息與將信息顯示給用戶看的Visual Basic 程序之間架起了一座橋梁。我們可以設(shè)置ADODC控件的各個屬性,告訴它要調(diào)用那個數(shù)據(jù)庫的哪個部分。缺省情況下,ADODC控件根據(jù)數(shù)據(jù)庫中的一個或多個數(shù)據(jù)庫表建立一個dynaset-type(動態(tài)集合)類型的記錄集合。一個記錄集合是動態(tài)的也就意味著,當(dāng)原來的數(shù)據(jù)表中的容改變了以后,該記錄集合中的記錄也會隨之改變。將ADODC控件放置在窗體中之后,我們還必須在該控件與要處理的數(shù)據(jù)庫之間建立聯(lián)系。
第四章 使用Access2000創(chuàng)建數(shù)據(jù)庫 4.1數(shù)據(jù)庫的概念
數(shù)據(jù)庫是一種存儲數(shù)據(jù)并對數(shù)據(jù)進(jìn)行操作的工具。數(shù)據(jù)庫的作用在于組織和表達(dá)信息,簡而言之,數(shù)據(jù)庫就是信息的集合。計(jì)算機(jī)的數(shù)據(jù)庫可以分為兩類:非關(guān)系數(shù)據(jù)庫(flat-file)和關(guān)系數(shù)據(jù)庫(relational)。關(guān)系數(shù)據(jù)庫中包含了多個數(shù)據(jù)表的信息,數(shù)據(jù)庫含有各個不同部分的術(shù)語,象記錄、域等。4.2新建一個數(shù)據(jù)庫
創(chuàng)建任何一個數(shù)據(jù)庫的第一步是仔細(xì)的規(guī)劃數(shù)據(jù)庫,設(shè)計(jì)必須是靈活的、有邏輯的。創(chuàng)建一個數(shù)據(jù)庫結(jié)構(gòu)的過程被認(rèn)為是數(shù)據(jù)模型設(shè)計(jì)。1. 標(biāo)識需要的數(shù)據(jù);
2. 收集被子標(biāo)識的字段到表中; 3. 標(biāo)識主關(guān)鍵字字段; 4. 規(guī)范數(shù)據(jù);
5. 標(biāo)識指定字段的信息;
4.3修改已建的數(shù)據(jù)庫
數(shù)據(jù)庫的修改分為;添加、編輯和刪除記錄。這三種操作均可由Visual Basic創(chuàng)建的程序來完成,下面的章節(jié)將詳細(xì)描述實(shí)現(xiàn)的具體方法。
第五章 可行性分析
學(xué)生信息,作為一個學(xué)校,就有一定的工作量存在,而學(xué)生信息,它的工作量可能是其它信息工作量的幾倍,班級的增加、班級的查找、班級的修改;學(xué)生檔案;課程管理;成績管理;繳費(fèi)管理;統(tǒng)計(jì)等等,每個信息的數(shù)據(jù)都在不斷地變化著,如果采用人工的方式進(jìn)行操作,那么,一天的工作量,足以讓人覺得比較繁瑣,吃不消。針對這樣的情況,采用讓數(shù)據(jù)的查詢變得簡單化,數(shù)據(jù)變的更讓每個人都在任何時刻都可以了解到。學(xué)生信息管理系統(tǒng)是為本校開發(fā)的,本系統(tǒng)所采用的語言是Visual Basic,用Microsoft Access 2000數(shù)據(jù)庫完成。該系統(tǒng)總體有四部分組成,包括學(xué)生信息查詢、教務(wù)信息維護(hù)、學(xué)生選課及用戶管理。通過本系統(tǒng),把本校內(nèi)部查詢學(xué)生信息、教務(wù)信息、學(xué)生選課各個環(huán)節(jié)進(jìn)行有效地計(jì)劃、組織和控制。通過本校內(nèi)部的信息,依據(jù)統(tǒng)一數(shù)據(jù)信息進(jìn)行管理,把任何一塊信息所產(chǎn)生的數(shù)據(jù)變動及時地反映給其它相關(guān)信息,做到數(shù)據(jù)共享。本系統(tǒng)主要信息流程為:教務(wù)信息維護(hù)接受學(xué)生的信息,學(xué)生信息查詢根據(jù)教務(wù)信息維護(hù)的學(xué)生信息做出對所接收的信息合理性進(jìn)行判斷,并交于信息維護(hù)進(jìn)行相應(yīng)的修改,再把信息存入數(shù)據(jù)庫中。學(xué)生選課是對學(xué)生進(jìn)行相應(yīng)選擇自己相關(guān)的課程。最后進(jìn)行打印。采用本系統(tǒng),能夠使整個系統(tǒng)內(nèi)部所有信息的工作簡化,提高工作效益。由于采用統(tǒng)一的數(shù)據(jù)信息,使相關(guān)資料能夠快速地查詢所需的數(shù)據(jù)、資料及其它信息的,使信息快速高效運(yùn)行。
本系統(tǒng)中使用到的數(shù)據(jù)表主要有班級表、成績表、繳費(fèi)表、課程表、學(xué)生檔案、用戶資料,由這六個表,組成了名為信息的數(shù)據(jù)庫(如圖一)。其中學(xué)生檔案是本系統(tǒng)主要的(圖一)
一張表,所有信息都是根據(jù)這張學(xué)生檔案進(jìn)行有關(guān)的操作,主要的字段有:學(xué)號、姓名、年級、專業(yè)、性別、出生年月、民族、籍貫、政治面貌、家庭地址、郵政編碼、聯(lián)系電話、入學(xué)時間、備注。其中日期的數(shù)據(jù)類型為日期/時間天型,其它的數(shù)據(jù)類型為文本型;成績表中字段為:學(xué)號、姓名、年級、專業(yè)、學(xué)期、考試時間、考試科目、考試地點(diǎn)、課程性質(zhì)、科目分?jǐn)?shù)、違紀(jì)類型、備注;課程表中字段為:專業(yè)、年級、學(xué)期、課程名稱、教材、任課老師、課時、上課地點(diǎn)、課程性質(zhì)、考試性質(zhì);用戶資料中的字段包括:用戶名、密碼、身份。
數(shù)據(jù)庫與VB的連接:本系統(tǒng)的數(shù)據(jù)鏈接采用的是ADO方法,打開控制面板,打開ODBC數(shù)據(jù)源圖標(biāo),選擇“系統(tǒng)DSN”標(biāo)簽,點(diǎn)擊“添加”按鈕,在彈出的“創(chuàng)建新數(shù)據(jù)源”對話框中選擇名稱為“Microsoft Access Drive(*.mdb)”,點(diǎn)擊“完成”按鈕,在ODBC Microsoft Access 安裝對話框中在數(shù)據(jù)源名中輸入信息,在數(shù)據(jù)庫這個框中,單擊“選擇”按鈕,在彈出的選擇數(shù)據(jù)庫這一對話框架中,在驅(qū)動器下拉列表框中選擇本系統(tǒng)數(shù)據(jù)庫所在驅(qū)動器,在目錄中選擇庫所在的文件夾,在文件類型中選擇選“Access數(shù)據(jù)庫(*.mdb)”,在數(shù)據(jù)庫名中選擇本系統(tǒng)的數(shù)據(jù)庫,點(diǎn)擊“確定”按鈕即完成數(shù)據(jù)鏈接。
在VB中,用ADODC鏈接數(shù)據(jù)庫,用DataGrid或DATA將庫中的數(shù)據(jù)在界面中顯示出來,本系統(tǒng)采用DataGrid。在界面上右擊Adodc控制,在彈出的快捷菜單中選擇屬性,在屬性對話框中,在“屬性”這一標(biāo)簽中,選中單選框“Use ODBC Data Source Name”,并在下拉文本框中選擇已經(jīng)配置好的數(shù)據(jù)源名信息,再在“RecordSoure”標(biāo)簽中,在Commard Text(SQL)文本框中輸入查詢語句,如:select * from 學(xué)生檔案。同時,將桌面的DataGrid控件選中,在屬性框中,將它的Datasoure設(shè)為Adodc。我們可以設(shè)置DataGrid控件的外觀:選中該控件,右擊,在彈出的快捷菜單中選擇“檢索字段”,在彈出的對話框中單擊“確定”,這時,表格中出現(xiàn)了表的字段。然后再右擊,同樣,在彈出的快捷菜單中選擇“編輯”,我們就可以所在的表格的寬度進(jìn)行調(diào)整。
第六章 系統(tǒng)(查詢模塊)總體規(guī)劃 6.1系統(tǒng)功能(查詢模塊)1. 查詢信息的情況; 2. 判斷信息是否符合要求; 3. 將符合條件的信息進(jìn)行打印; 6.2流程圖
學(xué)生注冊 基本信息輸入 學(xué)籍信息管理 班級管理 班級課程設(shè)置 課程基本信息 班級課程管理 成績信息輸入 成績信息管理 班級設(shè)置
第七章 系統(tǒng)具體實(shí)現(xiàn) 7.1各功能的實(shí)現(xiàn)
7.1.1課程管理:課程設(shè)置(如:界面如圖二)(圖二)
運(yùn)行程序后,進(jìn)入課程管理模塊,課程管理模塊的第一塊是課程設(shè)置,在這模塊中可以把專業(yè)、年級、學(xué)期、課程名稱、教材、任課老師、課時、上課地點(diǎn)、課程性質(zhì)和考試性質(zhì)等信息輸入,以便使用。結(jié)束語 學(xué)生信息管理系統(tǒng)(課程設(shè)置和打印統(tǒng)計(jì))的完成,它在審核這一功能中能夠?qū)Σ煌闆r的資料進(jìn)行設(shè)置和打印,針對需要的信息進(jìn)行設(shè)置和打印。
后記
本系統(tǒng)能夠順利完成,非常感謝指導(dǎo)老師陳志衛(wèi)老師,同時,也感謝和我一起合作完成本系統(tǒng)的另兩位同學(xué)。對于本人來說,通過這次畢業(yè)設(shè)計(jì),也是對自己在這三年學(xué)習(xí)的一個檢驗(yàn)和平時學(xué)習(xí)的一種結(jié)累,可以在學(xué)習(xí)中提高自己,也充分體現(xiàn)學(xué)有所用,學(xué)以致用的學(xué)習(xí)倡導(dǎo)。
在此,我對三年來輔導(dǎo)過我的各位任課老師深表感謝
主要參考文獻(xiàn)
本系統(tǒng)的過程中,主要的參考文獻(xiàn)有:
《Visual Basic6.0》 林陳雷 人民郵電出版社 《面向?qū)ο蟪绦蛟O(shè)計(jì)系列教材》 龔沛曾 高等教育出版社 《Visual Basic6.0編程實(shí)例精解》 何文俊
《學(xué)用Visual Basic 編程》 潭 浩 西安電子科技大學(xué)出版社 《Visual Basic6.0 數(shù)據(jù)庫開發(fā)與專業(yè)應(yīng)用》 敬 錚 國防工業(yè)出版社 《Visual Basic6.0 數(shù)據(jù)庫程序設(shè)計(jì)高手》 溫賢發(fā) 科學(xué)出版社
第四篇:員工信息管理系統(tǒng)
員工信息管理系統(tǒng) 系統(tǒng)的功能描述 設(shè)計(jì)一個員工信息管理系統(tǒng),使之具有以下功能(1)系統(tǒng)以菜單方式工作,應(yīng)為用戶提供清晰的使用提示,依據(jù)用戶的選擇來進(jìn)行各種處理并且在此過程中能夠盡可能地兼容用戶使用過程中的輸入異常情況(2)員工信息錄入功能(員工信息用文件保存),注意員工按員工號進(jìn)行區(qū)分,即每個員工的員工號都是唯一的,不允許出現(xiàn)兩個員工或員工號相同的情況(3)可對員工信息進(jìn)行查詢,具體分為:按姓名查詢、按員工號查詢、按職務(wù)查詢。(4)可對員工信息進(jìn)行刪除(5)可對員工信息進(jìn)行修改,注意員工號不可修改,修改應(yīng)逐個地進(jìn)行,一個員工記錄的更改不應(yīng)影響其他的員工記錄(6)可對全部員工信息進(jìn)行顯示(員工信息瀏覽),注意員工信息的顯示要規(guī)范。其中員工信息應(yīng)包括姓名、員工號、性別、年齡、最高學(xué)歷、職務(wù)、薪水、聯(lián)系電話、住址 系統(tǒng)的總體設(shè)計(jì) 本系統(tǒng)可以按功能進(jìn)行模塊劃分,系統(tǒng)的總體設(shè)計(jì)如圖如下所示。“系統(tǒng)功能菜單” 選擇模塊完成用戶命令的接收,此模塊也是員工信息管理系統(tǒng)的入口,用戶所要進(jìn)行的各種操作均需在此模塊中進(jìn)行選擇并進(jìn)而調(diào)用其他模塊實(shí)現(xiàn)相應(yīng)的功能。“添加信息” 模塊完成員工信息的錄入功能,錄入的信息包括姓名、員工號、性別、年齡、最高學(xué)歷、職務(wù)、薪水、聯(lián)系電話、住址(這里可以根據(jù)需要加入其他信息)“查詢信息”
模塊完成員工信息的查詢,查詢可分為三種方式:按姓名查詢、按員工號查詢、按職務(wù)查詢(這里也可以根據(jù)需要根據(jù)其他方式進(jìn)行查詢)“修改信息” 模塊完成員工信息的修改功能
“刪除信息” 模塊完成員工信息的刪除功能
“顯示信息” 模塊完成所有員工的顯示功能
第五篇:學(xué)生信息管理系統(tǒng)
目 錄
摘要
隨著電腦的普及與使用,現(xiàn)在的管理也提升了一個檔次,漸漸實(shí)現(xiàn)了無紙化辦公,即從原來的人工記錄管理模式轉(zhuǎn)變?yōu)殡娔X一體化管理。高校是科研的陣地,后勤的學(xué)生信息管理系統(tǒng)也應(yīng)該一改傳統(tǒng)的人工管理,更加信息化,時代化,節(jié)省人力物力,提高效率。基于這一點(diǎn),我設(shè)計(jì)了學(xué)生信息管理系統(tǒng)的方案。
學(xué)生信息管理系統(tǒng),是以高校的管理方式為實(shí)例而設(shè)計(jì)的一種實(shí)用型管理系統(tǒng)。本系統(tǒng)最大的特點(diǎn)是通用性、簡單操作性,適用于同行業(yè)以及一些同類型的企業(yè)管理。隨著學(xué)校寄宿人員的增多,學(xué)生信息管理系統(tǒng)人員的負(fù)擔(dān)越來越重,為了讓所有學(xué)生信息管理系統(tǒng)人員能從繁重的工作中解脫出來,實(shí)現(xiàn)無紙化辦公;使工作更有條理,更方便,更有效率而開發(fā)出這套學(xué)生信息管理系統(tǒng)軟件。
關(guān)鍵詞:信息、管理、實(shí)用性、高校
前言
從2012年3月27日開始,我們進(jìn)行了為期一周的軟件工程課程設(shè)計(jì)選題工作。在這一周我確定了我的課程設(shè)計(jì)題目:學(xué)生信息管理系統(tǒng)。
確定設(shè)計(jì)題目之后,我先做了一些準(zhǔn)備工作,借閱必要的書籍與材料,通過互聯(lián)網(wǎng)以及其他媒介收索了關(guān)于學(xué)生信息管理系統(tǒng)的相關(guān)知識,然后進(jìn)行針對性的學(xué)習(xí)。首先就是開發(fā)此類項(xiàng)目的背景。當(dāng)前,學(xué)生信息管理體制相對比較落后。主要表現(xiàn)在以下幾個方面:1.高校現(xiàn)行的管理體制不能完全適應(yīng)國有的管理發(fā)展的需要。2.信息管理人員超編現(xiàn)象普遍存在。
3、高校的信息管理大多數(shù)都還停留在初級的計(jì)算機(jī)管理上。對于大量的數(shù)據(jù)和龐大的數(shù)據(jù)結(jié)構(gòu),簡單的用EXCEL表格來記錄是遠(yuǎn)遠(yuǎn)無法滿足信息的規(guī)模的。必須實(shí)行現(xiàn)代化信息管理,定制專業(yè)的信息管理軟件來進(jìn)行相關(guān)的管理。
4、學(xué)生信息公開化不夠。高校的精密儀器設(shè)備一般都比較貴重,學(xué)生的信息如不能得到有效的共享,將會嚴(yán)重制約設(shè)備的使用效率,甚至導(dǎo)致重復(fù)購買。一套完整的網(wǎng)絡(luò)系統(tǒng)將會讓這個問題迎刃而解。
在需求分析階段,我對學(xué)生信息管理系統(tǒng)進(jìn)行了系統(tǒng)功能分析。系統(tǒng)功能包括登陸、學(xué)生查詢自己的信息、管理員的日常管理、教師的登陸、查詢等幾部分。
接著在系統(tǒng)設(shè)計(jì)和詳細(xì)設(shè)計(jì)階段期間,因?yàn)樾枰詫W(xué)和探索的內(nèi)容與軟件較多,所以我發(fā)揮積極主動精神投入課程設(shè)計(jì)和開發(fā)活動。除了老師正式安排的課程設(shè)計(jì)時間之外,還充分利用課余時間,向善長這方面的同學(xué)進(jìn)行請教和互相探討,力爭獲得最大收益。在需求分析的基礎(chǔ)上,考慮經(jīng)濟(jì)、技術(shù)和運(yùn)行環(huán)境等各方面條件,確定系統(tǒng)的總體結(jié)構(gòu)和系統(tǒng)各組成部分的技術(shù)方案,合理選擇計(jì)算機(jī)和通信的軟硬件設(shè)備,提出系統(tǒng)的實(shí)施計(jì)劃。內(nèi)容主要包括學(xué)生學(xué)校管理系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì)、系統(tǒng)流程設(shè)計(jì)等等。根據(jù)系統(tǒng)的邏輯模型,完成數(shù)據(jù)流程圖等的設(shè)計(jì)。使我對這些開發(fā)設(shè)計(jì)的軟件應(yīng)用工具運(yùn)用和掌握的更加熟練。
員。每個人都有唯一的一個用戶名,每個用戶名都有與之對應(yīng)的密碼,如果用戶名和密碼不一致,則無法登陸主界面。如果用戶輸入錯誤可以單擊“重臵”按鈕,重新輸入。輸入完整單擊“確定”按鈕進(jìn)入主界面。
圖1:登陸界面
2.2.2 主界面用例描述
用戶通過下拉列表框選擇身份,可以是學(xué)生、教師或者管理員。用戶選擇身份以后,輸入自己的用戶名和密碼。系統(tǒng)通過認(rèn)證后,出現(xiàn)學(xué)生信息管理系統(tǒng)主界面。通過系統(tǒng)驗(yàn)證用戶進(jìn)入學(xué)生信息管理主界面,在主界面中我們可以看到登陸學(xué)生的基本信息,學(xué)生所修課程的信息。用戶可以通過“查找”按鈕看到所查找學(xué)生的信息。如圖2:
圖2:主界面
2.2.3 修改密碼用例描述
登陸到主界面中,我們可以看到在主界面的右側(cè)
圖3:修改密碼界面
2.2.4 選修課信息用例描述
用戶單擊“選修課信息”按鈕,進(jìn)入到選修課信息界面。在選修課信息界面中我們可以看到本學(xué)期所有可選的課程信息。學(xué)生選擇選修課程表的課程,在界面的左下角會出現(xiàn)對應(yīng)的課程詳細(xì)信息。單擊“選修”,就可將所選課程添加到列表框里。單擊“退選”按鈕,那么已選課程將從所選課程列表里刪除,同時退選課程里將出現(xiàn)退選的課程,單擊退選就可以退選此課程了。單擊“確定”按鈕,保存選修課信息。用戶還可以通過“查看”按鈕查看歷年來的所選修的課程情況。如圖4所示:
圖4:選修課信息
2.2.5 個人信息用例描述
在主界面的學(xué)生基本信息框下面有兩個按鈕,一個是“查看更多信息”一個是“修改基本信息”。學(xué)生、教師、管理員都可以在主界面單擊“查看更多信息”按鈕,進(jìn)入“個人信息”界面里查看個人基本的信息。管理員可以對這些進(jìn)行修改,并且只限管理員修改。如圖5。
圖5:個人信息界面
2.2.6 修改學(xué)生信息用例描述
管理員可以單擊修改按鈕對學(xué)生信息進(jìn)行修改,當(dāng)用戶是學(xué)生或者老師時,修改按鈕對其不可用。
管理員進(jìn)入個人信息界面時,單擊修改按鈕就可以進(jìn)入到修改個人信息界面,對學(xué)生的信息進(jìn)行修改。單擊“確定”按鈕保存。如圖6:
圖6:修改個人信息界面
2.2.7 查看、修改課程信息用例描述
在主界面中我們還可以看到學(xué)生所修課程信息情況。這里列出了本學(xué)期該學(xué)生所修的所有具體課程,每個具體課程占一行,單擊“具體課程信息”按鈕進(jìn)入
“課程信息”界面,用戶可以看到完整的課程號、課程名、授課教師、學(xué)分信息。同時可以通過選擇不同學(xué)年的時間段來查看相應(yīng)學(xué)年的課程信息。如圖7:
教師和管理員有權(quán)對課程信息進(jìn)行修改,如果要修改學(xué)生課程信息可以單擊“修改”按鈕,進(jìn)入到“修改課程信息”界面,這里列出可課程名、課程號、任課教師等一系列與課程有關(guān)的信息。單擊“確定”可以保存修改的信息并退出。如圖8:
圖7:查看課程信息界面
圖8:修改課程信息
2.2.8 考勤表用例描述
在主界面上單擊“考勤信息”進(jìn)入到“考勤表”的界面。系統(tǒng)給出所查找學(xué)生的考勤情況。其中包括住宿考勤與課堂考勤兩部分。并且最上方有學(xué)生的住宿信息以及基本信息。如圖9所示:
圖九:考勤表信息界面
2.2.9 獎懲表用例描述
在主界面,單擊“獎懲信息”按鈕。進(jìn)入獎懲表界面,這里給出了歷年的獎勵與懲罰信息以及學(xué)生的基本信息。如果單擊“修改”按鈕可以對學(xué)生獎懲項(xiàng)進(jìn)行添加、刪除、修改等操作,此操作只能由管理員進(jìn)行。學(xué)生信息管理系統(tǒng)給出相應(yīng)的學(xué)生的獎懲情況。學(xué)生單擊個人信息界面上的“獎懲”按鈕,進(jìn)入到獎懲表的界面。教師在查找到相應(yīng)的學(xué)生信息后可以通過“獎懲”按鈕來查看該生所有的獎勵與懲罰項(xiàng)。如圖10:
圖10:獎懲表信息界面
2.2.10 修改獎懲信息用例描述
管理員可以通過“修改”按鈕進(jìn)入到“修改獎懲信息”界面。可以對學(xué)生的獎懲信息直接進(jìn)行修改。如圖11:
圖11:修改獎懲信息界面
3.2.2 修改密碼時序圖
用戶進(jìn)入主界面,單擊“修改密碼”按鈕進(jìn)入“修改密碼”界面。輸入相應(yīng)的修改信息,系統(tǒng)檢測輸入是否完整、確認(rèn)密碼是否與新密碼一致、舊密碼是否正確。檢測通過,顯示成功信息。如圖二所示:
圖2:修改密碼時序圖
3.2.3 選修課信息時序圖
學(xué)生在主界面單擊“選修課信息”進(jìn)入選修課信息界面,此界面上顯示了所有可選的課程信息,這些信息來自選修課信息表。單擊某一課程,在詳細(xì)課程信息里顯示具體課程信息,課程的具體信息來自模板課程信息表。如圖三所示:
圖3:選修課信息時序圖
3.2.4 退選選修課時序圖
當(dāng)學(xué)生選修了某一課程時,該課程也許與該生課時或其他原因有所沖突而不能選修,這時應(yīng)有提示,并讓該生退選改課程。學(xué)生單擊“退選”按鈕,系統(tǒng)提示是否退選,單擊“是”則在學(xué)生的選修課信息表里移除這個選課項(xiàng)。如圖四所示:
圖4:退選選修課時序圖
3.2.5 查看基本信息時序圖
學(xué)生進(jìn)入主界面后,主界面顯示了學(xué)生的個人信息,單擊“查看更多信息”按鈕,進(jìn)入“個人信息界面”,此界面中顯示的信息來自學(xué)生的基本信息表。如圖五所示:
圖5:查看基本信息時序圖
3.2.6 修改個人信息時序圖
在個人信息界面中單擊“修改”按鈕,進(jìn)入到修改學(xué)生信息界面,修改界面的學(xué)生信息也是來自學(xué)生的基本信息表,當(dāng)用戶單擊修改時,系統(tǒng)提示是否修改,單擊“是”,系統(tǒng)修改基本信息項(xiàng)。并保存。如圖六所示:
圖6:修改個人信息時序圖
3.2.7 課程信息時序圖
用戶進(jìn)入主界面,單擊“具體課程信息”按鈕,進(jìn)入到課程信息界面。在這里顯示了具體的課程信息。此信息來自個人課程信息表。如圖七所示:
圖7:課程信息時序圖
3.2.8 修改課程信息時序圖
管理員或者教師在課程信息界面單擊“修改”按鈕或者從主界面單擊“修改課程信息”按鈕,進(jìn)入到修改課程信息界面,當(dāng)用戶單擊修改時,系統(tǒng)檢測信息是否完整,并提示是否修改,單擊“是”,系統(tǒng)這時修改個人課程信息表的信息項(xiàng)。如圖八所示:
圖8:修改課程信息時序圖
3.2.9 考勤表時序圖
用戶在主界面單擊“考勤信息”進(jìn)入考勤表界面。在考勤表界面中顯示學(xué)生的出勤信息。此信息來自學(xué)生的住宿考勤表和課件考勤表。如圖九所示:
圖9:考勤表時序圖
3.2.10 獎懲表時序圖
用戶在主界面單擊“獎懲信息”進(jìn)入獎懲表界面,此界面顯示該生所有的獎懲情況。這些信息來自于學(xué)生的獎懲表。如圖十所示:
圖10:獎懲表時序圖
3.2.11 修改獎懲表信息時序圖
當(dāng)管理員單擊修改時,進(jìn)入修改獎懲信息界面,這里顯示的信息同樣來自獎懲表。當(dāng)單擊“修改”時,系統(tǒng)檢測信息是否完整,提示是否修改,單擊“是”,系統(tǒng)修改獎懲信息項(xiàng),并提示修改成功。如圖十一:
圖11:修改獎懲信息時序圖
總結(jié)
從3月27日開始,我們進(jìn)行了將近三個月的課程設(shè)計(jì)。通過這次課程設(shè)計(jì),我拓寬了知識面,鍛煉了能力,綜合素質(zhì)得到較大提高。安排課程設(shè)計(jì)的基本目的,在于通過理論與實(shí)際的結(jié)合、人與人的溝通,進(jìn)一步提高思想覺悟。尤其是觀察、分析和解決問題的實(shí)際工作能力,以便培養(yǎng)成為能夠主動適應(yīng)社會主義現(xiàn)代化建設(shè)需要的高素質(zhì)的復(fù)合型人才。作為整個學(xué)習(xí)體系的有機(jī)組成部分,課程設(shè)計(jì)雖然安排在了三個月的時間進(jìn)行,但并不具有絕對獨(dú)立的意義。它的一個重要功能,在于運(yùn)用學(xué)習(xí)成果,檢驗(yàn)學(xué)習(xí)成果。運(yùn)用學(xué)習(xí)成果,把課堂上學(xué)到的系統(tǒng)化的理論知識,嘗試性地應(yīng)用于實(shí)際設(shè)計(jì)工作,并從理論的高度對設(shè)計(jì)工作的現(xiàn)代化提出一些有針對性的建議和設(shè)想。檢驗(yàn)學(xué)習(xí)成果,看一看課堂學(xué)習(xí)與實(shí)際工作到底有多大距離,并通過綜合分析,找出學(xué)習(xí)中存在的不足,以便為完善學(xué)習(xí)計(jì)劃,改變學(xué)習(xí)內(nèi)容與方法提供實(shí)踐依據(jù)。在一個星期的課程設(shè)計(jì)之后,我們普遍感到不僅實(shí)際動手能力有所提高,更重要的是通過對軟件開發(fā)流程的了解,進(jìn)一步激發(fā)了我們對專業(yè)知識的興趣,并能夠結(jié)合實(shí)際存在的問題在專業(yè)領(lǐng)域內(nèi)進(jìn)行更深入的學(xué)習(xí)。
在這次設(shè)計(jì)中遇到了很多實(shí)際性的問題,在實(shí)際設(shè)計(jì)中才發(fā)現(xiàn),書本上理論性的東西與在實(shí)際運(yùn)用中的還是有一定的出入的,所以有些問題不但要深入地理解,而且要不斷地更正以前的錯誤思維。一切問題必須要靠自己一點(diǎn)一滴的解決,而在解決的過程當(dāng)中你會發(fā)現(xiàn)自己在飛速的提升。對于學(xué)生信息管理系統(tǒng),主要是解決程序設(shè)計(jì)中的問題,而程序設(shè)計(jì)是一個很靈活的東西,它反映了你解決問題的邏輯思維和創(chuàng)新能力,它才是一個設(shè)計(jì)的靈魂所在。因此在整個設(shè)計(jì)過程中大部分時間是用在程序上面的。很多子程序是可以借鑒書本上的,但怎樣銜接各個子程序才是關(guān)鍵的問題所在,這需要對系統(tǒng)的結(jié)構(gòu)很熟悉。因此可以說系統(tǒng)的設(shè)計(jì)是軟件和硬件的結(jié)合,二者是密不可分的。通過這次課程設(shè)計(jì)我也發(fā)現(xiàn)了自身存在的不足之處,雖然感覺理論上已經(jīng)掌握,但在運(yùn)用到實(shí)踐的過程中仍有意想不到的困惑,經(jīng)過一番努力才得以解決。
我覺得作為一名學(xué)習(xí)軟件工程的學(xué)生,這次課程設(shè)計(jì)是很有意義的。更重要的是如何把自己平時所學(xué)的東西應(yīng)用到實(shí)際中。雖然自己對于這門課懂的并不
多,很多基礎(chǔ)的東西都還沒有很好的掌握,覺得很難,也沒有很有效的辦法通過自身去理解,但是靠著這三個月的“學(xué)習(xí)”,在老師、同學(xué)的幫助和講解下,漸漸對這門課逐漸產(chǎn)生了些許的興趣,自己開始主動學(xué)習(xí)并逐步從基礎(chǔ)慢慢開始弄懂它。同時,在這里感謝我們的指導(dǎo)老師彭博老師的悉心解惑和指導(dǎo)。