第一篇:Oracle期末實習報告——VBOracle學生成績管理系統(tǒng)
Oracle期末實習報告
——VB/Oracle學生成績管理系統(tǒng)
實習學期:班級: 學號: 姓名: 指導老師:
2014—2015第一學期
一、項目概述
使用學生成績管理系統(tǒng)數(shù)據(jù)庫XSCJ作為后臺數(shù)據(jù)庫,以Microsoft Visual Basic 6.0為前臺開發(fā)工具,開發(fā)一個數(shù)據(jù)庫應用系統(tǒng)。本系統(tǒng)的功能包括學生信息的查詢;學生信息的錄入、修改和刪除;學生成績的錄入和刪除。
二、總體設計
2.1 XSCJ數(shù)據(jù)庫設計
1、學生成績管理數(shù)據(jù)庫中包含四個表:學生信息表(XSB)、學生照片表(XSZP)、課程表(KCB)、成績表(CJB);
2、創(chuàng)建學生課程成績視圖(XS_KC_CJ);
3、使用觸發(fā)器實現(xiàn)刪除學生對應成績和照片(xs_delete);
4、使用完整性約束實現(xiàn)刪除對應成績記錄;
5、使用存儲過程實現(xiàn)更新成績和總學分(CJ_Data)。
2.2 前臺設計
1、主窗體,包含本系統(tǒng)所有功能的選擇;
2、學生信息查詢窗體;
3、學生信息管理窗體;
4、學生成績錄入窗體。
三、詳細設計
3.1 XSCJ數(shù)據(jù)庫詳細設計
3.1.1 表格設計
學生信息表(XSB)
包含學號(XH)、姓名(XM)、性別(XB)、出生時間(CCSJ)、專業(yè)(ZY)、總學分(ZXF)、備注(BZ)等列。
學生照片表(XSZP)
包含學號(XH)、照片(ZP)等列。課程表(KCB)
包含課程號(KCH)、課程名(KCM)、開課學期(KKXQ)、學時(XS)、學分(XF)等列。
成績表(CJB)
包含學號(XH)、課程號(KCH)、成績(CJ)等列。
3.1.2 學生課程成績視圖設計
通過學號將學生表和成績表聯(lián)系起來,通過課程號將成績和課程表聯(lián)系起來,包含學號、姓名、專業(yè)、課程號和成績等列,所有學生的選課情況都保存在視圖中,即任意一個學號和任意一個課程號都在視圖中有對應的一條記錄,如果成績表(CJB)存在對應的記錄則在成績視圖中顯示成績,不存在則顯示為NULL。
3.1.3 觸發(fā)器設計
通過創(chuàng)建學生表(XSB)的DELETE觸發(fā)器實現(xiàn)當刪除學生記錄時,同步刪除成績表(CJB)中該學生的成績記錄和照片表(XSZP)中的照片記錄。3.1.4 完整性約束的設計
用參照完整性約束實現(xiàn)當刪除課程記錄后,同步刪除成績表(CJB)中所有學生的該課程的成績記錄。
3.1.5 儲存過程的設計
創(chuàng)建存儲過程CJ_Data,參數(shù)包含:學號(in_xh)、課程號(in_kch)和成績(in_cj)。根據(jù)課程號查詢該課程對應的學分,根據(jù)學號和課程號查詢該成績記錄,刪除原來成績記錄。如果成績>=60,則該學生總學分(ZXF)減去該課程的學分,如果新成績=-1(表示刪除該成績記錄),則存儲過程結(jié)束。增加成績記錄,如果成績>=60,則該學生總學分(ZXF)加上該課程的學分。
3.2 前臺詳細設計
3.2.1 主窗體的設計
主窗體包含本系統(tǒng)所有功能的選擇,其他的所有功能界面都將作為主窗體的子窗體,運行時直接在主窗體中顯示。包含主要功能有:學生信息查詢、學生信息管理、學生成績錄入。
3.2.2 學生信息查詢窗體設計
可以滿足簡單查詢的需要,什么條件都不輸入則顯示所有記錄??梢暂斎霔l件進行簡單的模糊查詢,各個條件之間為與的關(guān)系。在查詢的結(jié)果中,鼠標單擊一行記錄時,可以查看此學生的備注和照片。
3.2.3 學生信息管理窗體設計
通過輸入學生學號后單機“查詢”按鈕可以在窗口中的各個控件中顯示當前學生的具體信息。單擊“更新”按鈕可以對學生信息進行添加和修改。單擊“刪除”按鈕可以刪除相應的學生記錄。當刪除一條學生記錄時,觸發(fā)器XS_DELETE會自動到CJB中刪除此學生的成績記錄,并到XSZP表中刪除此學生的照片記錄,以保證數(shù)據(jù)的參照性完整。
3.2.4 學生成績錄入窗體設計
用戶選擇課程名和專業(yè)后,單擊“查詢”按鈕,下方的表格中會從視圖XS_KC_CJ中列出與課程名和專業(yè)都對應的學生的學號、姓名、課程號和所選課程的成績。如果未選該課程則成績?yōu)榭铡.斠苿颖砀裰械挠涗浖瘯r,學號、姓名和成績文本框中將列出對應的數(shù)據(jù)。在成績文本框中輸入新成績或修改舊成績,單擊“更新”按鈕則調(diào)用存儲過程CJ_Data向CJB表中插入一行新成績或修改原來的成績。單擊“刪除”按鈕則調(diào)用儲存過程CJ_Data刪除CJB表對應的一行成績記錄。
四、功能實現(xiàn)
4.1 XSCJ數(shù)據(jù)庫功能實現(xiàn)
4.1.1 創(chuàng)建表空間
CREATE TABLESPACE STUDENT LOGGING DATAFILE 'D:apptaooradataXSCJSTUDENT01.DBF' SIZE 100M;
4.1.2 創(chuàng)建表
學生表(XSB)
CREATE TABLE XSB(XH char(6)
XM char(8)
XB char(2)NOT NULL PRIMARY KEY, NOT NULL, DEFAULT '1' NOT NULL, CSSJ date NOT NULL, NULL, NULL,NULL ZY char(12)
ZXF number(2)BZ varchar2(200));課程表(KCB)
CREATE TABLE KCB(NOT NULL PRIMARY KEY, NOT NULL,NULL, NULL, NOT NULL KCH char(3)
KCM char(16)
KKXQ XS
XF);number(1)number(2)number(1)
成績表(CJB)
CREATE TABLE CJB(XH char(6)NOT NULL, KCH char(3)NOT NULL, CJ number(2)NULL, PRIMARY KEY(XH, KCH));學生照片表(XSZP)
CREATE TABLE XSZP(XH char(6)NOT NULL PRIMARY KEY, ZP blob NULL);4.1.3 插入樣本數(shù)據(jù)
數(shù)據(jù)為課本后學生信息數(shù)據(jù)。
4.1.4 創(chuàng)建視圖XS_KC_CJ CREATE VIEW XS_KC_CJ AS SELECT XSB.XH,XSB.XM, XSB.ZY, KCB.KCH,KCB.KCM,CJB.CJ FROM XSB CROSS JOIN KCB LEFT OUTER JOIN CJB ON CJB.XH=XSB.XH AND CJB.KCH=KCB.KCH;4.1.5 創(chuàng)建觸發(fā)器
CREATE OR REPLACE TRIGGER xs_delete AFTER DELETE ON XSB FOR EACH ROW DECLARE PRAGMA AUTONOMOUS_TRANSACTION;BEGIN DELETE FROM CJB WHERE XH=:OLD.XH;DELETE FROM XSZP WHERE XH=:OLD.XH;COMMIT;END;
/*聲明自治事務*/ 4.1.6 創(chuàng)建存儲過程CJ_Data CREATE OR REPLACE PROCEDURE CJ_Data(in_xh IN char, in_kch IN char, in_cj IN number)AS in_count number;in_xf number:=0;in_cjb_cj number:=0;BEGIN SELECT XF INTO in_xf FROM KCB WHERE KCH=in_kch;SELECT COUNT(*)INTO in_count FROM CJB WHERE XH=in_xh AND KCH=in_kch;IF in_count>0 THEN
SELECT CJ INTO in_cjb_cj FROM CJB WHERE XH=in_xh AND KCH=in_kch;DELETE FROM CJB WHERE XH=in_xh AND KCH=in_kch;IF in_cjb_cj>=60 THEN UPDATE XSB SET ZXF=ZXF-in_xf WHERE XH=in_xh;END IF;END IF;IF in_cj<>-1 THEN
INSERT INTO CJB VALUES(in_xh, in_kch, in_cj);IF in_cj>=60 THEN UPDATE XSB SET ZXF=ZXF + in_xf WHERE XH=in_xh;END IF;END IF;COMMIT;END;4.1.7 創(chuàng)建完整性約束
ALTER TABLE CJB ADD CONSTRAINT FK_KC FOREIGN KEY(KCH)REFERENCES KCB(KCH)ON DELETE CASCADE;4.2 前臺功能實現(xiàn)
4.2.1 主窗體實現(xiàn)
代碼:
Private Sub search_Click()stu_query.Show stu_query.ZOrder 0 End Sub Private Sub manage_Click()stu_manage.Show stu_manage.ZOrder 0 End Sub Private Sub insert_Click()cj_insert.Show cj_insert.ZOrder 0 End Sub 頁面設計:
功能:
主窗體包含其他三個功能窗體,可以切換學生信息查詢、學生信息管理、學生成績錄入功能子窗體
4.2.2 學生信息查詢窗體
頁面設計:
功能展示:
可以滿足簡單查詢的需要,什么條件都不輸入則顯示所有記錄??梢暂斎霔l件進行簡單的模糊查詢,各個條件之間為與的關(guān)系。在查詢的結(jié)果中,鼠標單擊一行記錄時,可以查看此學生的備注和照片。
當查詢學號為101101的學生時,展示該學生的各種信息。
4.2.3 學生信息管理窗體
頁面設計:
功能展示:
通過輸入學生學號后單機“查詢”按鈕可以在窗口中的各個控件中顯示當前學生的具體信息。單擊“更新”按鈕可以對學生信息進行添加和修改。單擊“刪除”按鈕可以刪除相應的學生記錄。當刪除一條學生記錄時,觸發(fā)器XS_DELETE會自動到CJB中刪除此學生的成績記錄,并到XSZP表中刪除此學生的照片記錄,以保證數(shù)據(jù)的參照性完整。
先查詢到學號為101101的學生信息,然后載入圖片,點擊更新后數(shù)據(jù)庫的信息就隨之更新了。
4.2.4 學生成績錄入窗體
頁面設計:
功能展示: 用戶選擇課程名和專業(yè)后,單擊“查詢”按鈕,下方的表格中會從視圖XS_KC_CJ中列出與課程名和專業(yè)都對應的學生的學號、姓名、課程號和所選課程的成績。如果未選該課程則成績?yōu)榭铡.斠苿颖砀裰械挠涗浖瘯r,學號、姓名和成績文本框中將列出對應的數(shù)據(jù)。在成績文本框中輸入新成績或修改舊成績,單擊“更新”按鈕則調(diào)用存儲過程CJ_Data向CJB表中插入一行新成績或修改原來的成績。單擊“刪除”按鈕則調(diào)用儲存過程CJ_Data刪除CJB表對應的一行成績記錄。
查詢到學號為101101、課程名為離散數(shù)學的學生成績,在成績文本框更改成績,點擊更新后數(shù)據(jù)庫里的成績就隨之更改了,相應的總學分也會通過儲存過程更改。
五、小結(jié)與體會
這次實習讓我收獲非常大。在oracle數(shù)據(jù)庫方面,我又復習鞏固了數(shù)據(jù)庫創(chuàng)建、表格創(chuàng)建、視圖、觸發(fā)器、儲存過程、完整性約束等方面知識。而且更加深刻認識到這些知識在實際應用中的作用。在前臺方面,第一次使用VB 6.0寫前臺程序,雖然具體設計和代碼大多都是參考書上的講解,但是,我還是學會了很多東西,特別是前臺設計的思路。
在實習過程中我也遇到過很多問題。比如,在剛開始使用VB 6.0時,我一直無法實現(xiàn)和數(shù)據(jù)庫關(guān)聯(lián)。我明明是按照書上的代碼來操作的,但是還是實現(xiàn)不了相應的功能。后來我通過上網(wǎng)查資料、和同學探討等方式,終于明白原來是機房的電腦配置中出了點問題。在修改過一個配置文件后,我終于能讓前臺和數(shù)據(jù)庫鏈接上了,僅這一個問題就花費了我一上午的時間,但是能夠順利解決讓我感到非常興奮。我覺得實習的意義就在于在犯錯和解決錯誤的過程中成長。這種通過上網(wǎng)查資料、和小伙伴討論的過程,也是提升自我學習能力的途徑。所以,雖然過程比較艱辛,但是還是蠻開心的。
最后,我感覺在我完成的這個學生成績管理系統(tǒng)中還存在一些設計不夠合理的地方,一些功能也不夠優(yōu)化。但是限于目前知識水平有限、時間比較緊,只能先這樣提交。但是我會利用以后的課余時間繼續(xù)完善這個學生成績管理系統(tǒng)的。學習就是在不斷地完善中進步的嘛。
第二篇:oracle學生成績管理系統(tǒng)設計
階段1.1成績管理系統(tǒng)實體關(guān)系設計
一、實驗目的和要求
(1)熟練掌握實體關(guān)系設計的方法。(2)通過需求分析結(jié)果,掌握E-R圖。
二、實驗內(nèi)容和原理
實體關(guān)系設計是在需求分析的一個環(huán)節(jié)過程,在這一過程中產(chǎn)生E-R圖,該圖由實體、屬性和聯(lián)系三個要素構(gòu)成。邏輯結(jié)構(gòu)設計的任務就是把概念設計階段建立的基本E-R圖按照選定的系統(tǒng)軟件支持的數(shù)據(jù)模型,轉(zhuǎn)換成相應的邏輯模型。這種轉(zhuǎn)換要符合關(guān)系數(shù)據(jù)模型的原則。
E-R圖向關(guān)系模型轉(zhuǎn)換時要解決如何將實體和實體間的聯(lián)系轉(zhuǎn)換為關(guān)系,并確定這些關(guān)系的屬性和碼,這種轉(zhuǎn)換一般按下面的原則進行。
(1)一個實體轉(zhuǎn)換為一個關(guān)系,實體的屬性就是關(guān)系的屬性,實體的碼就是關(guān)系的碼。
(2)一個聯(lián)系也轉(zhuǎn)換為一個關(guān)系,聯(lián)系的屬性及聯(lián)系所連接的實體的碼都轉(zhuǎn)換為關(guān)系的屬性,但關(guān)系的碼會根據(jù)聯(lián)系的類型變化。
三、主要儀器設備
計算機一臺、Powerdesinger運行環(huán)境
四、操作方法與實驗步驟
在成績管理系統(tǒng)中,需要管理學生、課程和成績,以及它們之間的聯(lián)系。因此在該系統(tǒng)的E-R圖中,實體分別為學生、老師、課程。為了便于掌握,學生實體的屬性分別有學號、姓名、性別;課程實體的屬性有課程編號、課程名稱、學期、課程學分;教師實體的屬性有教師編號、姓名、性別。學生實體與課程實體有選課關(guān)系,而且一個學生可以選擇多門課程,一門課程也可以被多個學生選擇,因此學生和課程之間的聯(lián)系是m:n聯(lián)系。教師實體與課程實體有教授關(guān)系,一名教師可以教多門課程,一門課程也可以被多個教師教授,因此教師和課程之間的聯(lián)系是m:n聯(lián)系。學生在選課后會產(chǎn)生成績,教師授課后會產(chǎn)生授課地點及授課學期。根據(jù)上述分析,繪出的E-R圖如下圖所示。
階段1.2 成績管理系統(tǒng)結(jié)構(gòu)設計
一、實驗目的和要求
1.了解數(shù)據(jù)庫中列的屬性以及各個屬性的含義。2.掌握為不同的列選擇不同的屬性及范圍。
二、實驗內(nèi)容和原理
在管理信息系統(tǒng)中,物理結(jié)構(gòu)設計主要是指如何將通過邏輯結(jié)構(gòu)設計所得的系統(tǒng)邏輯結(jié)構(gòu)型轉(zhuǎn)換為物理模型,并明確地指出系統(tǒng)的物理存儲結(jié)構(gòu)。本實驗主要是利用CASE工具集PowerDesigner對成績管理系統(tǒng)進行物理結(jié)構(gòu)的設計。
三、主要儀器設備
計算機一臺、Powerdesinger 運行環(huán)境、Oracle運行環(huán)境
四、操作方法與實驗步驟
在物理結(jié)構(gòu)設計中需要考慮為每列設計合適的數(shù)據(jù)類型。成績管理系統(tǒng)中,學生(學號、姓名、性別)關(guān)系里,學號采用int來表示就可以了,而姓名設置成varchar2(20),性別只需要設置為char(2)。因為性別不是男就是女,因此只會占用兩個字節(jié)。所以最終我們可以將其物理表結(jié)構(gòu)設置為:t_student(stuid int,stuname varchar2(20),sex char(2)。依照上述,課程的物理表結(jié)構(gòu)為:t_course(couid int,couname varchar2(20),term char(2),credit number(3,1))。教師的物理存儲表結(jié)構(gòu)為:t_teacher(teaid int,teaname varchar2(20),sex char(2))。選課的物理表結(jié)構(gòu)為:t_selcour(sid int,cid int,score number.(4,2))。教課的物理表結(jié)構(gòu)為:t_teacour(tid int,cid int,teaaddr varchar2(30),term char(2))。
(1)通過手動編寫SQL語句方式建立數(shù)據(jù)庫后臺
上述創(chuàng)建了代表學生實體的表t_student,其中stuid設置為主鍵,唯一標識一個學生。
表t_course用來代表課程實體,其中采用couid來標識一門課程。當課程名稱的長度大于20個字符時,varchar2可以自動擴展。
物理實體在物理結(jié)構(gòu)中用t_teacher表來表示,teaid用來唯一標識一位教師,因此其不能空
選課表t_selcour中學生編號參考t_student表中的stuid,此時sid為外鍵,課程編號cid也作為外鍵參考t_course中的couid(2)通過PowerDesigner建立數(shù)據(jù)庫后臺。
第四步:到此,系統(tǒng)的概念模型就全部設計好了。接下來單擊菜單“工具”→“生成物理屬性模型”選項,就會彈出“物理數(shù)據(jù)模型生成選項”對話框,如下圖:
在“常規(guī)”選項卡中選擇“生成新的物理模型”單選鈕,并選擇DBMS為“OPACLE Version 10g”,“名稱”文本“MyPhysicalDataModel”,并單擊“確認”按鈕,在彈出得到路徑選擇對話框中輸入你想要放置生成的物理數(shù)據(jù)模型文件的位置,系統(tǒng)就會自動在指定的路徑下生成一個名為“MyPhysicalDataModal.pdm”的文件,并生成系統(tǒng)的物理模型,如下圖
CONGC
從菜單中選擇 Database---Generate Database選項。PowerDesigner將會在指定的路徑下生成一個名字為*.sql 的文本文件。里面存放可供Oracle 執(zhí)行的用來建立數(shù)據(jù)庫實體的SQL語句。
階段1.3 成績管路系統(tǒng)存儲過程設計
一、實驗目的和要求
(1)了解存儲過程的設計目的以及方法。(2)掌握存儲過程的創(chuàng)建。
二、實驗內(nèi)容和原理
存儲過程是在數(shù)據(jù)中定義的程序塊,它存放在數(shù)據(jù)庫服務端數(shù)據(jù)字典里。采用存儲過程可以提高過程代碼程序的執(zhí)行速度和代碼共享度。具體有以下幾個特點。(1)過程存放在服務器端,減少了網(wǎng)絡傳輸?shù)难訒r,提高了速度。(2)過程在執(zhí)行一次之后,會駐留內(nèi)存,后續(xù)的執(zhí)行無需再經(jīng)編譯過程,提高了執(zhí)行效率。
三、主要儀器設備
計算機一臺,Oracle運行環(huán)境
四、操作方法與實驗步驟
1、創(chuàng)建存儲過程先向表t_student中插入數(shù)據(jù),具體如下所示
2、每次向表t_student中插入數(shù)據(jù)時,只需要運行該過程就可以了。具體如下所示。表t_student中的列stuid被設置為主鍵,因此不可以存在重復值。在第二次運行時,因為輸入的第一個參數(shù)id與表中已存在的數(shù)據(jù)相同,所以插入時出現(xiàn)錯誤。
3、繼續(xù)向表中插入兩條記錄,其中當參數(shù)id不重復時,過程成功完成。
4、不僅可以通過存儲過程向表中插入數(shù)據(jù),也可以通過一般的SQL語句向表中插入數(shù)據(jù),如下所示。
5、向表中插入數(shù)據(jù)時,需要注意數(shù)據(jù)類型以及長度都需要與表中定義的相符,否則會出現(xiàn)錯誤,具體如下所示。
6、t_course表中列term被定義為char且長度為2,因此在插入數(shù)據(jù)時該列最大長度為2,超過該值會出現(xiàn)錯誤。課程表中只有已經(jīng)存在的課程編號才能被插入到選課表中,否則會出錯,這樣就保證了數(shù)據(jù)的一致性。
7、t_selcour表的另外一個外鍵為第一列sid,在插入時只有當該值存在于學生表中的學生編號時,才能被成功插入,否則也會出現(xiàn)錯誤,具體如下所示。
8、對于向表t_teacour中插入數(shù)據(jù)時,同樣需要滿足外鍵參考主鍵的約束條件,具體如下所示。
9、向表t_teacour中插入一行記錄,其中tid存在于表t_teacher的列teaid中,cid存在于表t_course列couid中。如果插入的值不符合外鍵約束條件,會出現(xiàn)錯誤,具體如下所示。
10、在完成對表插入值后,可以關(guān)聯(lián)表查詢記錄。比如:查詢教師編號為1的教師所帶的課程編號、教師姓名、課程名稱、課程學分信息,具體如下所示。實現(xiàn)了查詢編號為1的老師所帶的課程編號、課程名稱等信息。在查詢時,為表命名別名時為了方便,各個表的連接通過主鍵外鍵約束來實現(xiàn)。
查看t_course及t_selcourse中的值
五、實驗結(jié)果與分析
實驗結(jié)果如上截圖所示。
六、討論、心得
grant select不支持對表中選定的幾列授權(quán),只能將整個表的select權(quán)限授權(quán)出去。所以實驗中先建立了基于選課信息表的視圖SelectiveInfo1,視圖中包含成績列,學號列以及班級列(不包含其他的列)再將對視圖SelectiveInfo1的select權(quán)限授予角色teacher。
不同的用戶可以創(chuàng)建相同的表格,teacher用戶創(chuàng)建了table1,student用戶也創(chuàng)建了table1,且這兩個表格式完全相同的,那么其他用戶需要用這兩個表格時,可以用teacher.table1和student.table1加以區(qū)分。
實驗中遇到的問題可以上網(wǎng)百度,網(wǎng)上資源很豐富。
第三篇:學生成績管理系統(tǒng)
//*學生成績管理系統(tǒng)*//
#include
#define N 3
struct student
{
int no;
char name[20];
float english;
float computer;
float math;
float average;
};
void getclass(struct student *class_gishui)
{
int i;
printf(“請輸入%d個學生的學號 姓名 英語 計算機 數(shù)學n”,N);
for(i=0;i { printf(“第%d個學生”,i+1); scanf(“%d%s%f%f%f”,&class_gishui[i].no,&class_gishui[i].name,&class_gishui[i].english,&class_gishui[i].computer,&class_gishui[i].math); } } void print_class(struct student *class_gishui) { int i; for(i=0;i { class_gishui[i].average=(class_gishui[i].english+class_gishui[i].computer+class_gishui[i].math)/3; } printf(“學生信息表如下:n”); printf(“學號tt姓名tt英語tt計算機tt數(shù)學tt平均成績n”); for(i=0;i printf(“%dtt%stt%ft%ft%ft%fn”,class_gishui[i].no,class_gishui[i].name,class_gishui[i].english,class_gishui[i].computer,class_gishui[i].math,class_gishui[i].average); } void paixu(struct student *class_gishui) { int i,j,flag; struct student t[1]; for(i=0;(i { flag=0; for(j=0;j if(class_gishui[j].average>class_gishui[j+1].average) { t[0]=class_gishui[j]; class_gishui[j]=class_gishui[j+1]; class_gishui[j+1]=t[0]; flag=1; } if(flag==0) break; } printf(“排序后學生成績?yōu)椋簄”); printf(“學號t姓名t英語tt計算機tt數(shù)學tt平均成績n”); for(i=0;i printf(“%dt%st%ft%ft%ft%fn”,class_gishui[i].no,class_gishui[i].name,class_gishui[i].english,class_gishui[i].computer,class_gishui[i].math,class_gishui[i].average); } void main() { struct student class_gishui[N]; getclass(class_gishui); print_class(class_gishui); paixu(class_gishui); } 學生成績管理系統(tǒng)開題報告 一. 研究背景、目的、意義 背景:隨著經(jīng)濟的快速發(fā)展,科技的日益普及。目前我國的信息數(shù)字化工作也進入一個全新發(fā)展時期,特別是高校的信息化建設已進入了全面的發(fā)展階段,諸多高校充分地認識到,信息化建設己經(jīng)成為了高校提高自身管理水平、提升綜合競爭實力的重要手段。在高校,各種信息管理系統(tǒng)層出不窮。通過本系統(tǒng),能夠?qū)崿F(xiàn)對學生成績的有效管理,減少教務人員、教師的工作量,該系統(tǒng)能夠很好的滿足學校教學、管理方面的要求。 目的:為教務人員、教師提供學生成績管理系統(tǒng),以輕松實現(xiàn)學生成績管理。意義:系統(tǒng)化的成績管理可以減少教務人員及教師因為工作量大而出現(xiàn)錯誤,為學校減少不必要的人力、物力、財力,便于學生成績的增加、刪除、修改、查詢。 二.研究的主要內(nèi)容 ASP.NET方向:本系統(tǒng)的開發(fā)主要涉及到 Visual Basic編程語言和 Access的運用。對于Visual Basic編程語言我們主要研究圖形用戶界面(Graphic User Interface,簡稱GUI)的方法,它與其他編程軟件不同的是不需要編寫大量代碼去描述界面元素的外觀和位置,只要把預先建立好的對象拖放到屏幕上相應的位置即可。 數(shù)據(jù)庫方向:數(shù)據(jù)控件的使用主要需要和Access相連接使用,二者的結(jié)合使用可以很簡單的把數(shù)據(jù)庫的數(shù)據(jù)呈現(xiàn)給系統(tǒng)用戶。對數(shù)據(jù)庫的操作有備份、恢復等,這一類操作就要求對數(shù)據(jù)庫的存儲過程進行研究。 三.論文提綱 第一章:緒論(引言) 闡述本論文的書寫背景和系統(tǒng)開發(fā)的背景。 第二章:系統(tǒng)需求分析 第一節(jié):數(shù)據(jù)分析,分析系統(tǒng)開發(fā)所需數(shù)據(jù)類型、格式等,并有數(shù)據(jù)的實現(xiàn)性能。 第二節(jié):功能分析,分析用戶需求的功能和在技術(shù)可行的情況下能做出的功能。 第三節(jié):性能分析,設計系統(tǒng)運行的期望值,分析出系統(tǒng)實現(xiàn)時的性能需求,給出優(yōu)質(zhì)產(chǎn)品。 第三章:系統(tǒng)設計 第一節(jié):功能設計,設計系統(tǒng)所需功能如: 第二節(jié):數(shù)據(jù)庫設計,設計系統(tǒng)運行時所需要的數(shù)據(jù)庫。 第三節(jié):運行平臺,說明系統(tǒng)運行所需的軟硬件需求。 第四章:系統(tǒng)實施 第一節(jié):編碼 闡述各主要模塊的編碼設計 第二節(jié):程序測試 闡述在程序正確性驗證過程中所用到的測試用例第五章:總結(jié) 闡述自己在開發(fā)系統(tǒng)中所遇到的困難和解決方法,并得出所學的經(jīng)驗。第六章:致謝 致謝自己在開發(fā)過程中所得到的幫助即幫助自己的老師和同學 四.參考文獻 [1].C#入門經(jīng)典(第三版)/(美)(Watson,K.),(Nagel,C.)等編著 (至少六篇) 五.進度計劃 從10月15到12月13 截止,自己劃分自己論文的進程。如: 學生成績系統(tǒng)開發(fā)的進度安排: 1、10-15至10-25 收集,整理與分析資料2、10-26至11-10 系統(tǒng)設計3、11-11至11-30 系統(tǒng)實施4、12-1至12-5 論文初稿5、12-6至12-10 論文第二稿6、12-11至12-13 論文定稿 齊立波 翻譯 清華 專業(yè): 姓名: 電子郵箱: 聯(lián)系電話: 學生成績管理系統(tǒng) (論題報告) 一、論題提出的背景和意義 在21世紀的科技時代,科學技術(shù)突飛猛進,計算機已經(jīng)不僅是在科技上應用,而且在生活中也是同樣得到了廣泛應用。在我國,教育是一個影響著國富民強的重要行業(yè),隨著改革開放和市場經(jīng)濟的發(fā)展,教育得到了國家的大力扶持與社會各界的高度重視,從而使教育業(yè)向規(guī)范性與現(xiàn)代化的方向高速發(fā)展。但是同發(fā)達國家相比,我國的教育行業(yè)的信息技術(shù)的應用程度還很低,只有在大城市中發(fā)展較早、規(guī)模較大的院校中才使用計算機進行大規(guī)模操作,從各方面提高工作效率,取得良好的社會和經(jīng)濟效益。而一些新興的、規(guī)模較小的教育機構(gòu)還沒有全部具備這種功能。因此可見,隨著我國教育的迅速發(fā)展,信息技術(shù)在其上的應用會更加地廣泛和深入。學生成績管理是學校管理中非常重要的一個環(huán)節(jié),是整個學校教務管理中的重要一部分,鑒于它的重要性,學生成績管理系統(tǒng)的開發(fā)與應用就逐漸提入議程。運用學生成績管理系統(tǒng)可以減輕學院教學人員的工作量,加快查詢速度,加強管理。 運用學生成績管理系統(tǒng)可以縮小教學開支,提高工作效率與準確率,學校能夠合理安排時間,學生能夠盡快的知道考試成績,以便投入新的課程的學習或復習這次沒有考過的課程。而學生成績管理系統(tǒng)的應用也為今天的民辦教育在未來市場的競爭力有所提高。從大的方向說,就是為了加速我國四化建設的發(fā)展,實 現(xiàn)全部的自動化,使我國發(fā)展成為通訊網(wǎng)絡化,決策科學化,辦公自動化的國家。 二、目前學生成績管理存在的現(xiàn)狀 在我國,各大中小學校的各類信息管理系統(tǒng)并非一個新的課題,但也有的學校根本就沒有任何信息管理系統(tǒng),所有的工作幾乎還是手工操作來完成。計算機技術(shù)在日新月異的發(fā)展,但是有的很多學校,特別是在西部貧困地區(qū),學校的信息管理都依然由手工操作來完成,這十分落后,效率極低,成本很大,而且極異出錯。隨著社會的發(fā)展,信息化是社會進程的必然趨勢,學校管理只有快,準,精才能發(fā)揮其價值。所以機器代替人力是必然的歷史發(fā)展趨勢,只有領(lǐng)導的重視和支持才能從人工操作改為計算機的自動化系統(tǒng)。人工操作必將被計算機代替。 縱觀目前國內(nèi)研究現(xiàn)狀,在安全性和信息更新化方面存在有一定的不足,各現(xiàn)有系統(tǒng)資料單獨建立,共享性差;在以管理者為主體的方式中,信息取舍依賴管理者對于信息的認知與喜好,較不容易掌握用戶真正的需求,也因此無法完全滿足用戶的需求。 三、開發(fā)學生成績管理系統(tǒng)的必要性和可行性 學生成績管理是各大學的主要日常管理工作之一,涉及到校、系、師、生的諸多方面,隨著教學體制的不斷改革,尤其是學分制、選課制的展開和深入,學生成績?nèi)粘9芾砉ぷ骷氨4婀芾砣遮叿敝亍碗s。迫切需要研制開發(fā)一款功能強大,操作簡單,具有人性化的學生成績管理系統(tǒng)。作為學校,學生成績管理的計算機化是整個學校管理中的重要一部分,能否實現(xiàn)這一步關(guān)系到學校辦學整體效率的高低,介與它的重要性,學生成績管理系統(tǒng)的開發(fā)與應用就逐漸提入議程,并占著越來越重要的份量。 技術(shù)可行性-----本系統(tǒng)將采用ASP.Net4.0+SQL Server 2008進行開發(fā),供管理人員在本地機上完成對數(shù)據(jù)庫的各種修改工作.并且采用了數(shù)據(jù)訪問技術(shù)ADO.Net使之能更好地訪問本地和遠程的數(shù)據(jù)庫;在數(shù)據(jù)環(huán)境方面,允許程序員可視化地創(chuàng)建和操作ADO.Net連接命令等優(yōu)點,SQL Server 2008是一款非常成熟的數(shù)據(jù)庫管理軟件,提供了強大的數(shù)據(jù)庫訪問功能,為數(shù)據(jù)庫管理與分析帶來靈活性,因此, 對于軟件技術(shù)要求,C#語言已非常成熟。 經(jīng)濟可行性-----系統(tǒng)管理的對象單一,都是在校學生,且每個數(shù)據(jù)內(nèi)容具有較強的關(guān)聯(lián)性,涉及的計算過程不是很復雜。對機器本身沒有太高的要求,學校用于學生管理的微機在存儲量、速度方面都能滿足數(shù)據(jù)庫運行的要求。計算機裝上該應用軟件,即可使用系統(tǒng),當系統(tǒng)投入運行后可以為學校節(jié)約大量的人力,物力,在經(jīng)濟上完全可行。 操作可行性-----數(shù)據(jù)錄入迅速、規(guī)范、可靠;統(tǒng)計準確;制表靈活;適應力強;容易擴充。 四、開發(fā)學生成績管理系統(tǒng)的構(gòu)想 (一)、系統(tǒng)分析 成績管理系統(tǒng)的業(yè)務總體目標是建立一個先進、高效、安全、可靠的能被有效和應用于學生成績管理的信息化數(shù)據(jù)庫管理系統(tǒng)。 由于本系統(tǒng)管理的對象單一,都是在校學生,且每個數(shù)據(jù)內(nèi)容具有較強的關(guān)聯(lián)性,涉及的計算過程不是很復雜。因此,比較適合于采用數(shù)據(jù)庫管理。并且學校用于學生成績管理的微機在存儲量、速度方面都能滿足數(shù)據(jù)庫運行的要求。在技術(shù)難度方面,由于有指導老師的指導和相關(guān)參考文獻,借助于網(wǎng)上資料,因此完全可以實現(xiàn)。 本系統(tǒng)用戶角色主要有兩類:系統(tǒng)管理員與普通用戶。其中系統(tǒng)管理員可進行用戶管理。普通用戶可分為學生、老師等用戶。 系統(tǒng)管理員:可進行用戶管理,權(quán)限分配,信息查詢等工作。 教師:可進行學生信息管理,課程信息管理,成績管理,授課信息管理,信息查詢,成績統(tǒng)計等工作。 學生:可進行成績查詢等操作。 (二)、系統(tǒng)設計 1.開發(fā)語言:C# 該系統(tǒng)基于B/S結(jié)構(gòu),即采用瀏覽器/服務器模式,服務器端由運行ASP.Net的Web應用程序及運行Microsoft SQL Server2008的數(shù)據(jù)庫服務器組成,Web服務器使用IIS6.0,運行環(huán)境為windows平臺,可以使用瀏覽器訪問本系統(tǒng)。本信息系統(tǒng)體現(xiàn)了學生成績管理的業(yè)務邏輯行為、大大簡化了相關(guān)工作的煩瑣流 程,同時為管理層提供有力的決策支持。 2.開發(fā)工具的選擇: 針對目前世界上流行的大量軟件和開發(fā)工具,經(jīng)過認真分析其優(yōu)缺點,結(jié)合本系統(tǒng)特點,我們選用Microsoft Visual Studio作為軟件開發(fā)工具。Visual Studio是一種可視化的、面向?qū)ο蠛驼{(diào)用事件驅(qū)動方式的結(jié)構(gòu)化高級程序設計,可用于開發(fā)windows環(huán)境下的種類應用程序。它簡單易學、效率高,而且功能強大??梢愿咝А⒖焖俚亻_發(fā)出windows環(huán)境下功能強大、圖形界面豐富的應用軟件系統(tǒng)。 3.數(shù)據(jù)庫系統(tǒng)的選擇: Microsoft SQL Server 是一個具備完全Web支持的數(shù)據(jù)庫產(chǎn)品,提供了可擴展標記語言核心支持以及Internet上和防火墻外進行查詢的能力,具有可伸縮性、靈活性、擴充性好,而且價格便宜的特點。本系統(tǒng)選用Microsoft SQL Server2008作為數(shù)據(jù)庫系統(tǒng)。 五、進度安排 2月15日-20日 系統(tǒng)調(diào)查分析、設計 2月21日-29日 系統(tǒng)實施、運行與維護 3月1日 提交論文 3月2日-15日根據(jù)指導老師的意見對系統(tǒng)進行調(diào)整、修改論文 3月16日以后準備答辯 六、系統(tǒng)預計成果 本系統(tǒng)從功能上劃分可分為功能模塊管理,組權(quán)限管理,學生信息管理,課程信息管理,學生成績管理,授課信息管理等幾大模塊。以下將對各子模塊進行說明。 1.功能模塊管理: 將系統(tǒng)功能模塊保存到數(shù)據(jù)庫中以便于動態(tài)地進行不同用戶組權(quán)限的分配等操作。本模塊包括功能模塊的添加,刪除,修改等。 2.組權(quán)限管理: 對用戶進行分組,并將權(quán)限設置到不同的用戶組,添加、修改、刪除用戶信息。 3.學生信息管理: 輸入學生基本信息,并可以對學生信息進行添加、查詢、修改、刪除。還可查詢并輸出學生基本信息。 4.課程信息管理: 設置課程號,課程名等課程信息。 5.成績信息管理: 輸入成績信息,并可以對成績信息進行添加、查詢、修改、刪除。還可以用關(guān)鍵字查詢,并對學生基本成績信息修改、刪除等。輸出查詢的學生成績信息,可以打印成績單。 6.授課信息管理: 對教師授課信息的調(diào)度,安排等信息的管理。 主要參考資料: C#與.NET 4高級程序設計Andrew Troelsen著,朱曄譯人民郵電出版社 ADO.NET數(shù)據(jù)庫應用開發(fā)張俊崔海波著機械工業(yè)出版社 C#開發(fā)技術(shù)大全明日科技 著人民郵電出版社 ASP.NETWeb程序設計蔣培,王笑敏 著清華大學出版社 SQL學習指南比利 著,張偉超 林青松 譯人民郵電出版社 數(shù)據(jù)庫系統(tǒng)原理丁寶康著經(jīng)濟科學出版社 HTML/CSS/JavaScript標準教程:實例版(第3版)電子工業(yè)出版社第四篇:學生成績管理系統(tǒng)開題報告
第五篇:學生成績管理系統(tǒng)(論題報告)