VB課程設(shè)計學(xué)生成績管理系統(tǒng)單片機_第1頁
VB課程設(shè)計學(xué)生成績管理系統(tǒng)單片機_第2頁
VB課程設(shè)計學(xué)生成績管理系統(tǒng)單片機_第3頁
VB課程設(shè)計學(xué)生成績管理系統(tǒng)單片機_第4頁
VB課程設(shè)計學(xué)生成績管理系統(tǒng)單片機_第5頁
已閱讀5頁,還剩27頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、VB課程設(shè)計學(xué)生成績管理系統(tǒng)姓名:學(xué)號:班級:系別:電子工程系前 言隨著信息技術(shù)在管理上越來越深入而廣泛的應(yīng)用,管理信息系統(tǒng)的實施在技術(shù)上已逐步成熟。管理信息系統(tǒng)是一個不斷發(fā)展的新型學(xué)科,任何一個單位要生存要發(fā)展,要高效率地把內(nèi)部活動有機地組織起來,就必須建立與自身特點相適應(yīng)的管理信息系統(tǒng)。本文介紹了在VISUAL BASIC6.0環(huán)境下采用“自上而下地總體規(guī)劃,自下而上地應(yīng)用開發(fā)”的策略開發(fā)一個管理信息系統(tǒng)的過程。通過分析學(xué)生成績管理的不足,創(chuàng)建了一套行之有效的計算機管理學(xué)生的方案。文章介紹了學(xué)生成績管理信息系統(tǒng)的系統(tǒng)分析部分,包括可行性分析、業(yè)務(wù)流程分析等;系統(tǒng)設(shè)計部分主要介紹了系統(tǒng)功能設(shè)

2、計和數(shù)據(jù)庫設(shè)計及代碼設(shè)計;系統(tǒng)實現(xiàn)部分說明了幾個主要模塊的算法, 本系統(tǒng)面友好,操作簡單,比較實用。目 錄前 言2第一章 學(xué)生成績管理系統(tǒng)511需求分析6111系統(tǒng)概述81. 1. 2功能需求描述10第二章 總體設(shè)計及流程圖142.1開發(fā)與設(shè)計的總體思想152.2系統(tǒng)模塊結(jié)構(gòu)圖16模塊設(shè)計16界面設(shè)計17數(shù)據(jù)庫設(shè)計17第三章 詳細設(shè)計183.1學(xué)生管理模塊183.2教師管理模塊233.3課程管理模塊233.4成績管理模塊23參考文獻27致 謝27前 言 幾年的學(xué)習(xí)即將結(jié)束,經(jīng)過幾個月的努力,我所設(shè)計的“學(xué)生成績管理系統(tǒng)”也已完成。以往學(xué)的都是理論性很強的知識,再加上實踐機會不多,更增強了我對計

3、算機科學(xué)的興趣。在這段時間里,我增強了自己動手的能力,更重要的是似乎把握住了計算機的一些實質(zhì)性的東西終于能夠用我所學(xué)的知識解決一些實際應(yīng)用的問題了。但我知道,數(shù)據(jù)庫技術(shù)只是計算機科學(xué)的一個小小分支,計算機還有更廣闊的領(lǐng)域有待我們?nèi)ヌ剿鳌?這次畢業(yè)設(shè)計是用Visul Basic語言設(shè)計的“學(xué)生成績管理系統(tǒng)”,這就要求對Visul Basic語言及數(shù)據(jù)庫技術(shù)能夠真正了解和熟練的掌握,并且能夠靈活的運用。 當(dāng)今的時代是信息的時代,數(shù)據(jù)庫技術(shù)是數(shù)據(jù)管理的最新方法,也是信息管理中一項非常重要的新技術(shù),數(shù)據(jù)庫管理是幫助人們處理大量信息,實現(xiàn)科學(xué)化和現(xiàn)代化的強有力工具,數(shù)據(jù)庫管理子系統(tǒng)已發(fā)展成為通用的系統(tǒng)軟

4、件。由于數(shù)據(jù)庫具有數(shù)據(jù)結(jié)構(gòu)化、最低冗余度、較高的程序獨立性、易于擴充、易于編制應(yīng)用程序等優(yōu)點,因而是近年來發(fā)展非常迅猛的計算機軟件。數(shù)據(jù)庫技術(shù)是數(shù)據(jù)信息管理技術(shù)的最新成果,被廣泛應(yīng)用于國民經(jīng)濟、文化教育、軍事情報、科學(xué)計算、人工智能和計算機輔助設(shè)計領(lǐng)域,為計算機的應(yīng)用開辟了廣闊的天地。第一章 學(xué)生成績管理系統(tǒng)11需求分析 考試成績是學(xué)生在校期間的重要歷史資料,學(xué)生成績信息的管理(成績的錄入、查詢、分類統(tǒng)計等)是各個學(xué)校面臨的一個重要問題。該成績管理系統(tǒng)主要是用于管理在校學(xué)生的考試成績,對教、班級、學(xué)生、課程和成績信息進行維護與管理。本系統(tǒng)要求運行穩(wěn)定,圖形用戶界面符合用戶的日常使用習(xí)慣,數(shù)據(jù)處

5、理正確無誤。111系統(tǒng)概述 學(xué)生成績管理系統(tǒng)主要完成學(xué)生成績的管理,包括:(1) 教師管理。主要完成教師的添加、修改、刪除和查詢。(2) 班級管理。主要完成班級的添加、修改、刪除和班級列表。(3) 學(xué)生管理。主要完成對學(xué)生信息的添加、修改、刪除和查詢。(4) 課程管理。主要完成對課程信息的維護,包括課程添加、修改、刪除和查詢功能。(5) 成績管理。主要完成成績的添加、刪改和成績杳詢。功能需求描述 該系統(tǒng)的功能需求有如下幾個方面:(1) 教師管理。主要用于對教師信息進得維護。功能包括新教師信息的添加、修改和刪除已有的教師信息,對教師信息進行查詢。(2) 班級管理。主要用于對班級信息進行維護。功能

6、包括對班級信息的添加、刪改和班級列表。(3) 學(xué)生管理。主要用于維護學(xué)生信息。功能包括對學(xué)生信息的添加、刪改和查詢。(4) 課程管理。主要用于維護課程信息,功能包括課程的添加、刪改和查詢。(5) 成績管理。用于維護成績信息,功能包括成績的添加和查詢。第二章 總體設(shè)計及流程圖 上面的需求分析已經(jīng)對系統(tǒng)的功能需求、環(huán)境需求做了較為明確的闡述。根據(jù)上述需求,下面按照開發(fā)設(shè)計思想、功能模塊、圖形用戶界面、數(shù)據(jù)庫等方面闡述成績管理系統(tǒng)的總體設(shè)計。2.1開發(fā)與設(shè)計的總體思想 作為學(xué)校使用的成績管理系統(tǒng),能夠滿足成績管理的基本功能需求,界面簡單、操作簡便是設(shè)計的一個重要考慮。2.2系統(tǒng)模塊結(jié)構(gòu)圖 模塊設(shè)計圖

7、2-7 主窗體菜單設(shè)計的效果圖1.教師管理菜單設(shè)計(1) 教師信息添加界面設(shè)計 教師信息添加界面使用文本框輸入教師相關(guān)基本信息,使用組合列表框選擇部門和性別。單擊添加按鈕保存教師信息,單擊返回按鈕返回主菜單。具體設(shè)計效果圖如圖2-8所示。圖2-8 具體設(shè)計效果圖(2) 教師信息修改刪除界面設(shè)計圖2-9 具體設(shè)計效果圖2.學(xué)生管理界面設(shè)計(1) 學(xué)生信息添加界面設(shè)計學(xué)生信息添加界面使用文本框輸入學(xué)生的姓名、學(xué)號、生日、電話、地址和備注信息。同時使用了兩個組合列表框,分別用于選擇班級和性別。組合列表框中的數(shù)據(jù)會在窗體加載的時候就進行初始化。具體設(shè)計效果圖如圖1-11所示。(2) 學(xué)生信息刪改界面設(shè)

8、計在學(xué)生信息刪改界面中,在班級組合列表框中選擇班級,該班級的所有學(xué)號會添加到學(xué)號組合列表框中,在學(xué)號組合列表框中選擇學(xué)號,就會在下方顯示該學(xué)生的基本信息。根據(jù)需要單擊修改按鈕來修改學(xué)生信息,也可以單擊刪除按鈕來刪除該學(xué)生的信息,或是單擊返回按鈕返回主菜單。具體設(shè)計效果圖如圖2-10所示。圖2-10 具體設(shè)計效果圖(3) 學(xué)生信息查詢界面設(shè)計學(xué)生信息查詢辦面提供了四種查詢方式:全部、按班級查詢、按學(xué)號查詢和按姓名查詢。提供了一個表格用于赤示查詢結(jié)果。3.課程管理界面設(shè)計(1) 課程信息添加界面設(shè)計課程添加界面提供了文本框,用于輸入課程名稱、課程編號、課程學(xué)時數(shù)和學(xué)分等課程基本信息。并且提供了兩個

9、組合列表框,分別用于選擇課程類型和任課教師。這兩個組合列表框的數(shù)據(jù)是在加載窗體的時候進行初始化的。(2) 課程信息刪改界面設(shè)計課程信息刪改界面提供了文本框,用于輸入課程編號,單擊查詢按鈕就會查找該課程編號所代表的課程信息,找到后將信息顯示出來。修改和刪除按鈕用于完成修改和刪除操作。具體設(shè)計效果圖如圖2-11所示。圖2-11 具體設(shè)計效果圖4.成績管理界面設(shè)計(1) 成績錄入界面設(shè)計成績界面使用文本框輸入學(xué)生學(xué)號和課程成績。使用組合列表框選擇課程編號。使用表格顯示查詢結(jié)果。使用兩個文本框顯示學(xué)生姓名和課程名稱。這兩個文本框是不可編輯的。具體設(shè)計效果圖如圖2-12所示。圖2-12 具體設(shè)計效果圖(

10、2) 成績刪改界面設(shè)計圖2-13 具體設(shè)計效果圖(3) 成績查詢界面設(shè)計成績查詢界面提供了三種查詢方式:按學(xué)號、按課程和按成績查詢。使用表格顯示查詢結(jié)果。數(shù)據(jù)庫設(shè)計 根據(jù)系統(tǒng)功能設(shè)計的要求以及功能模塊的劃分,數(shù)據(jù)庫表結(jié)構(gòu)設(shè)計如下。1.學(xué)生信息表名稱:學(xué)生信息表(見表2-1)表名稱標(biāo)識:studentInfo數(shù)據(jù)來源:學(xué)生管理模塊進行錄入。2教師信息表名稱:教師信息表(見表2-2)表名稱標(biāo)識:teacherInfo數(shù)據(jù)來源:教師管理模塊進行錄入。3.班級信息表 表2-3 班級信息表名稱字段名稱類型主鍵非空班級編號ClassNo文本YesYes班級名稱className文本NoYes4.部門信息表

11、 表2-4 部門信息表名稱字段名稱類型主鍵非空部門編號Dept_no文本YesYes部門名稱Dept_name文本NoYes5.課程信息表 表2-5 課程信息表名稱字段名稱類型主鍵非空序號No自動編號YesYes課程編號Course_no文本NoYes課程名稱Course_name文本NoYes課程類型Course_type文本NoYes學(xué)時數(shù)Course_hours數(shù)字NoYes學(xué)分Score數(shù)字NoYes授課教師Teacher文本NoYes6.成績信息表 表2-6 成績信息表名稱字段名稱類型主鍵非空編號No自動編號YesYes學(xué)號Stu_no文本NoYes課程號Course_no文本NoY

12、es成績Score數(shù)字NoYes第三章 詳細設(shè)計基于系統(tǒng)需求分析與系統(tǒng)總體設(shè)計的結(jié)論,本系統(tǒng)采用Visual Basic 6.0實現(xiàn)各模塊的功能,下面按照功能模塊的劃分來分別闡述系統(tǒng)的詳細設(shè)計和實現(xiàn)過程。3.1學(xué)生管理模塊1.功能描述為用戶提供學(xué)生信息的添加、修改、刪除和查詢界面,完成學(xué)生信息的添加、修改、刪除和查詢功能。2.窗體和源文件定義該功能模塊涉及到的窗體名稱和文件名參見表3-1。 表3-1 窗體列表窗體各稱窗體文件名作用frmStudentfrmStudent.frm用于學(xué)生信息添加frmUpdateStudentfrmUpdateStudent.frm用于修改、刪除學(xué)生信息frmQ

13、ueryStudentfrmQueryStudent.frm用于查詢學(xué)生信息Module1Module1.bas用于定義全局變量和公用函數(shù)3.2教師管理模塊1功能描述 該模塊提供教師信息的添加、修改、刪除和查詢界面,完成教師信息的添加、修改、刪除和查詢功能。2窗體和源文件定義 表3-3 窗體列表窗體名稱窗體文件名作用frmAddTeacherfrmAddTeacher.frm用于教師信息添加frmUpdateTeacherfrmUpdateTeacher.frm用于修改、刪除教師信息frmQueryTeacherfrmQueryTeacher.frm用于查詢教師信息3.變量聲明窗體模塊中的聲明

14、Public sqlstr As StringPublic msgText As String代碼模塊中的聲明Public dbpath As StringPublic connStr As String4.函數(shù)與方法聲明 表3-4 主要函數(shù)與方法窗體名稱函數(shù)/方法名作用frmAddTeacherSub initDepartment()在組合列表框中列出所有部門名稱Sub initForm()初始化窗體上的文本框和組合列表框Private sub cmdOK_Click()添加教師信息frmUpdateTeacherSub initDepartment()在組合列表框中列出所有部門名稱Sub

15、initTeacherNo()在組合列表框中列出所有教師編號Sub getTeacherNo()獲取教師信息Private sub cmdDelete_click()刪除教師信息privatesubcmdUpdate_click()修改教師信息frmQueryTeacherSub initDepartment()在組合列表框中列出所有部門名稱Sub initTitles()在組合列表框中列出所有的職稱Private sub queryTeacher()查詢教師信息處理:1) 獲取信息輸入窗口中填寫的數(shù)據(jù)。2) 執(zhí)行查詢得到結(jié)果集,然后調(diào)用結(jié)果集對象的addNew方法。3) 設(shè)置各個字段的值。4

16、) 調(diào)用update方法更新結(jié)果集,完成教師信息添加。輸出:將數(shù)據(jù)寫入教師信息表程序清單:與學(xué)生信息添加代碼類似,請參考本書提供的源代碼。(3)frmUpdateTeacher窗體:private sub cmdUpdate_Click()功能:主要用來完成教師信息的修改,將窗體上修改后的信息添加到數(shù)據(jù)庫中。輸入:教師信息刪改窗體上輸入的數(shù)據(jù)。處理:1) 獲取信息輸入窗口中填寫的數(shù)據(jù)并得到SQL語句。2) 執(zhí)行SQL語句完成數(shù)據(jù)修改。輸出:將修改后的數(shù)據(jù)寫入教師信息表。程序清單:Private sub cmdUpdate_Click() Dim conn As ADODB.Connection

17、 sqlStr= “UPDATE teacherInfo set birthdate=#”& txtBirth & “#,department=”&cboDept(0).Text & “,telno=”&txtTel.Text&”,title=”&txtTitle.Text&”& “where teacher_no=” & txtNo.Text & “”on Error GoTo exitsubset conn=New ADODB.Connectionconn.Open connStrconn.Execut

18、e sqlstrMsgBox “成功修改數(shù)據(jù)!” Exitsub:Conn.closeinitDepartmentend sub 3.5成績管理模塊1功能描述該模塊提供成績信息的錄入、修改、刪除和查詢界面,完成成績信息的錄入、修改、刪除和查詢功能。2窗體和源文件定義該功能模塊涉及到的窗體名稱和文件名參見表3-9。 表3-9 窗體列表窗體名稱窗體文件名作用frmAddScorefrmAddScore.frm用于成績信息添加frmUpdateScorefrmUpdateScore.frm用于修改、刪除成績信息frmQueryScorefrmQueryscore.frm用于查詢成績信息3.變量聲明

19、窗體模塊中的聲明Public sqlstr As StringPublic msgText As String代碼模塊中的聲明Public dbpath As StringPublic connStr As String4函數(shù)與方法聲明 表3-10 主要函數(shù)與方法窗體名稱函數(shù)/方法名作用frmAddScoreSub initCourseNo()在下拉列表框中顯示所有課程號Private sub txtStuNo_KeyPress(KeyAscii As Integer)文本框響應(yīng)回車鍵,如果輸入學(xué)號后回車,就會查找并顯示學(xué)生姓名Private sub cboCourseNo_Click()在組

20、合列表框中選擇課程編號,觸發(fā)click事件,查找顯示課程名稱Private sub cmdOK_Click()向數(shù)據(jù)庫中添加成績信息frmUpdateScoreSub initCourseNo()在下拉列表框中顯示所有課程號Sub getScoreInfo()從數(shù)據(jù)庫中查找成績信息Private sub cmdUpdate_click()修改成績信息Private sub cmdDelete_Click()刪除成績信息frmQueryScorePrivate sub cmdOK_Click()查詢成績(1)frmAddScore窗體:private sub txtStuNo_KeyPress(

21、KeyAscii As Integer)功能:相應(yīng)鍵盤事件,如果是回車鍵,則按學(xué)號查詢學(xué)生姓名。輸入:按鍵的ASCII碼。處理:1) 判斷按鍵是否為回車鍵。2) 如果為回車鍵,剛轉(zhuǎn)3,否則退出。3) 查詢學(xué)生姓名并顯示出來。輸出:學(xué)生姓名。程序清單: Private sub txtStuNo_keypress(keyAscii As Integer)Dim rstStudent As ADODB.RecordsetIf KeyAscii=13 Then sqlStr= “select name from studentInfo” set rststudent=ExecuteSQL(sqlStr

22、,msgText) If Not rstStudent.EOF ThentxtName=rstStudent.Fields(0) Else MsgBox “未找到學(xué)生的信息記錄!”,vbOKOnly+vbExclamation, “警告” Exit subEnd IfrstStudent.Close End If End sub (2)frmAddScore窗體:private sub cmdOK_Click()功能:將窗體中的成績信息添加到數(shù)據(jù)庫中。輸入:成績添加窗體中填寫的數(shù)據(jù)。處理:1) 獲取信息輸入窗口中填寫的數(shù)據(jù)。2) 執(zhí)行查詢得到結(jié)果集,然后調(diào)用結(jié)果集對象的addNew方法。3)

23、設(shè)置各個字段的值。4) 調(diào)用update方法更新結(jié)果集,完成成績信息添加。輸出:將成績信息寫入數(shù)據(jù)庫。程序清單: Private sub cmdok_click() Dim rstScore As ADODB.Recordset Dim stuNo As String Dim courseNo As String Dim score As String 獲取數(shù)據(jù) stuNo=Trim(txtstuNo.Text) courseNo=Trim(cboCourseNo.Text) score=Trim(txtScore.Text) If stuNo= “”or score= “”Then MsgB

24、ox “請將信息補充完整”,vbOKOnly+vbExclamation, “警告”Exit sub End If 添加新記錄 sqlStr=”select*from scoreInfo” set rstScore=ExecuteSQL(sqlStr,msgText) rstScore.AddNew rstScore.Fields(“stu_no”)=stuNo rstScore.Fields(“course_no”)=courseNo rstScore.Fields(“course_score”)=scorerstScore.UpdaterstScore.CloseMsgBox “成績信息添

25、加完成!”,vboOKOnly+vbExclamation, “警告”initFormEnd sub(3)frmUpdateScore窗體:sub getScoreInfo()功能:根據(jù)課程編號和學(xué)號,從數(shù)據(jù)庫中讀取成績信息、課程名和學(xué)生名。輸入:課程編號和學(xué)號。處理:1) 獲取課程名稱和學(xué)號,得到多表查詢的SQL語句。2) 執(zhí)行查詢得到結(jié)果集。3) 從結(jié)果集中讀取各個字段的值并顯示出來。輸出:學(xué)生姓名、課程名稱、考試成績。程序清單: Sub getScoreInfo() Dim rstScore As ADODB.Recordset從數(shù)據(jù)庫中讀取成績相關(guān)信息并添加到窗體中的輸入框 sqlSt

26、r= “select name,course_name,coure_score fromcourseInfo,studentInfo,scoreInfo”&“wherescoreInfo.course_no=”&cbocourseNo.text & “”& “AND scoreInfo.course_no=courseInfo.course_no”& “AND scoreInfo.stu_no=studentInfo.stu_no”& “AND scoreInfo.stu_no=”& txtStuNo.Text & “” txtN

27、ame=Trim(rstScore.Fields(“name”) txtCourseName.Text=trim(rstScore.Fields(“dourse_name”) txtScore.Text=Trim(rstScore.Fields(“course_score”)Else MsgBox “沒找到符合條件的數(shù)據(jù)!”,vbOKOnly+vbExclamation, “警告” Exit sub End If rstScore.CloseEnd sub(4)frmQueryScore窗體:private sub cmdOk_Click()功能:根據(jù)查詢條件查找成績信息。輸入:查詢方式和關(guān)鍵

28、字。處理:1) 獲取查詢方式和輸入的關(guān)鍵字。2) 形成SQL語句,執(zhí)行SQL語句得到結(jié)果集。3) 從結(jié)果集中讀取全部數(shù)據(jù),并在表格中顯示出來。輸出:符合查詢條件的課程成績信息。程序清單:Dim sqlstr1 As StringDim sqlcond1 As StringDim sqlcond2 As StringDim sqlcond3 As StringDim sign As BooleanSqlcond1= “”Sqlcond2= “”Sqlcond3= “”Sign=FalseSqlstr=”selectstudentInfo.stu_noasstuNo.studentI as stuName,”_&“courseInfo.course_nameascourseName,scoreInfo.course_score as score”&_ “from studentInfo,courseInfo,scoreInfo WHERE”檢查是否已選擇了查詢條件If chkOp(0).value<>1 And chkOp91).value<>1 And chkOp(2).value<>1 Then MsgBo

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論