版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、數(shù)據(jù)庫原理課程設(shè)計任務(wù)書題目: 高校學(xué)生信息管理系統(tǒng) 學(xué)生姓名: 學(xué) 號: 班 級: 題目類型: 軟件工程(R) 指導(dǎo)教師: 一、數(shù)據(jù)庫課程設(shè)計題目簡介該設(shè)計要求學(xué)生以蘭州理工大學(xué)學(xué)生檔案管理業(yè)務(wù)為背景,設(shè)計、開發(fā)一套“高校學(xué)生信息管理系統(tǒng)”軟件。通過該題目的設(shè)計、開發(fā),使學(xué)生初步得到數(shù)據(jù)庫開發(fā)的訓(xùn)練,全面培養(yǎng)軟件開發(fā)過程中的分析、設(shè)計、編碼、測試及文檔規(guī)范書寫的能力,得到軟件開發(fā)的綜合訓(xùn)練,提高解決實際問題的能力。二、數(shù)據(jù)庫課程設(shè)計的任務(wù)1、查閱文獻資料,一般在10篇以上;2、以客戶關(guān)系管理系統(tǒng)為背景,通過調(diào)研、分析現(xiàn)有的管理模式和已有的管理軟件,建立系統(tǒng)模型;3、完成軟件結(jié)構(gòu)設(shè)計、數(shù)據(jù)庫設(shè)
2、計和算法設(shè)計;4、完成客戶關(guān)系管理系統(tǒng)的軟件開發(fā)和測試工作。5、撰寫設(shè)計說明書;6、做好答辯工作。三、數(shù)據(jù)庫課程設(shè)計的主要內(nèi)容、功能及技術(shù)指標1、系統(tǒng)功能的基本要求:(1)整個系統(tǒng)由學(xué)生基本信息管理子系統(tǒng)、學(xué)生獎勵懲罰信息管理子系統(tǒng)、學(xué)生畢業(yè)工作信息管理子系統(tǒng)等組成;(2)系統(tǒng)要實現(xiàn)基本信息錄入、修改、查詢等功能;2、數(shù)據(jù)庫要求:(在數(shù)據(jù)庫中至少應(yīng)該包含下列數(shù)據(jù)表)(1)學(xué)生基本表。包括的數(shù)據(jù)項有:學(xué)號、姓名、性別、民族、出生年月、籍貫、培養(yǎng)方式、政治面貌、所在院系、專業(yè)、家庭住址、通訊地址、郵政編碼、聯(lián)系人、聯(lián)系電話等。(2)獎勵懲罰信息表。包括的數(shù)據(jù)項有:獎勵、懲罰名稱、原因、各種評價等。
3、(3)畢業(yè)工作信息表。包括的數(shù)據(jù)項有:畢業(yè)情況、畢業(yè)去向、檔案派遣地、戶口派遣地等。3、其它要求:(1)系統(tǒng)要實現(xiàn)滿足多種條件的統(tǒng)計分析功能,有些統(tǒng)計數(shù)據(jù)要采用圖表的格式呈現(xiàn);(2)系統(tǒng)要有一定的安全控制策略;(3)系統(tǒng)要采用實際數(shù)據(jù)進行測試。四、數(shù)據(jù)庫課程設(shè)計提交的成果1. 課程設(shè)計說明書一份, A4打印稿,正文部分要求不少于20 頁,所有英文字體采用Arial。正文及目錄格式參考(畢業(yè)設(shè)計論文格式要求)正文內(nèi)容包括:(1) 需求分析; (2) 數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計; (3) 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計; (4) 數(shù)據(jù)流圖及程序結(jié)構(gòu)框圖; (5) 程序源代碼及其說明; (6) 總結(jié);(7) 參考文獻。
4、2. 刻制光盤一張,把完成的所有電子文檔(設(shè)計說明書文檔、打包后可運行程序及源程序)一并交由指導(dǎo)老師處。注:文檔目錄按照如下統(tǒng)一命名規(guī)則建立,“課設(shè)題目名稱/學(xué)號姓名/”,比如“公司人事管理系統(tǒng)/12730101周歡歡/”。五、主要參考文獻1 王珊著 數(shù)據(jù)庫系統(tǒng)概論(第四版). 高等教育出版社, 2002.32 劉金嶺等著 數(shù)據(jù)庫原理及應(yīng)用實驗與課程設(shè)計指導(dǎo),清華大學(xué)出版社出版,2010.63 錢雪忠等著 數(shù)據(jù)庫原理及技術(shù)課程設(shè)計(全新正版),清華大學(xué)出版社出版,2009.24 周屹著 數(shù)據(jù)庫原理及開發(fā)應(yīng)用實驗與課程設(shè)計指導(dǎo), 清華大學(xué)出版社出版,2008.125 李春葆等著 Visual B
5、asic數(shù)據(jù)庫系統(tǒng)設(shè)計與開發(fā),清華大學(xué)出版社出版,2003.86 唐紅亮著 SQL Server數(shù)據(jù)庫設(shè)計與系統(tǒng)開發(fā)教程,清華大學(xué)出版社出版,2007.107 丁忠俊著 數(shù)據(jù)庫系統(tǒng)原理及應(yīng)用,清華大學(xué)出版社出版,2012.48 李曉峰等著 數(shù)據(jù)庫系統(tǒng)原理及應(yīng)用,水利水電出版社,2011.29 萬常選著 數(shù)據(jù)庫系統(tǒng)原理與設(shè)計(第2版),清華大學(xué)出版社出版,2012.910 馮健華等著 數(shù)據(jù)庫系統(tǒng)設(shè)計與原理(第2版),清華大學(xué)出版社出版,2012.811(美)羅摩克里希納,格爾基著,周立棟譯 數(shù)據(jù)庫管理系統(tǒng)原理與設(shè)計(第3版),清華大學(xué)出版社出版,2004.312(美)西爾伯沙茨等著,楊冬青等譯
6、數(shù)據(jù)庫系統(tǒng)概念(原書第6版本科教學(xué)版),機械工業(yè)出版社,2013.113Access 2010數(shù)據(jù)庫應(yīng)用從入門到精通何先軍編,中國鐵道出版社,2013.1014數(shù)據(jù)庫系統(tǒng)概念、設(shè)計及應(yīng)用印 辛赫(Singh.S.K)著 何玉潔,王曉波,車蕾,等譯.機械工業(yè)出版社,2010.1六、各階段時間安排(共2周)周次日期內(nèi)容地點第1周星期一分組、選題、收集與整理資料教室星期二數(shù)據(jù)庫分析與設(shè)計教室星期三星期五用戶界面設(shè)計及系統(tǒng)功能實現(xiàn)教室第2周星期一星期二用戶界面設(shè)計及系統(tǒng)功能實現(xiàn)教室星期三測試程序上機演示教室星期四撰寫課程設(shè)計說明書教室星期五答辯教室2015年12月30日摘 要目前,我國的大中專院校的學(xué)
7、生信息管理水平普遍不高。在當(dāng)今的信息時代,傳統(tǒng)的管理方法必然要被以計算機為基礎(chǔ)的信息管理系統(tǒng)所代替,而且目前很多重點院校都已經(jīng)有了自己的教務(wù)管理系統(tǒng)。已有的大都比較偏向?qū)W生檔案管理,學(xué)籍管理等,而本案例則把重點放在信息管理上,從整體上進行分析設(shè)計,這對于其他類似的管理系統(tǒng)的設(shè)計有很高的參考意義。采用學(xué)生信息管理系統(tǒng)進行C#程序開發(fā),將C#程序中的所有概念和技術(shù)應(yīng)用到學(xué)生信息管理系統(tǒng)的開發(fā)當(dāng)中,按照軟件工程的思想來進行網(wǎng)站開發(fā)。分別進行學(xué)生信息管理系統(tǒng)需求分析、學(xué)生信息管理系統(tǒng)數(shù)據(jù)庫設(shè)計、學(xué)生信息管理系統(tǒng)主菜單設(shè)計、學(xué)生信息管理系統(tǒng)中類的應(yīng)用、學(xué)生信息管理系統(tǒng)數(shù)據(jù)訪問方法、學(xué)生信息管理系統(tǒng)窗體和
8、事件應(yīng)用和學(xué)生信息管理系統(tǒng)應(yīng)用部署等幾個模塊來完成。關(guān)鍵詞:C#;數(shù)據(jù)庫;信息管理;管理系統(tǒng) 目 錄1系統(tǒng)簡介1.1設(shè)計思想1.2可行性分析1.3小組分工2需求分析2.1需求調(diào)查2.2數(shù)據(jù)流程圖2.3數(shù)據(jù)字典3概念結(jié)構(gòu)設(shè)計3.1系統(tǒng)E-R圖3.2表/字段分析4邏輯結(jié)構(gòu)設(shè)計4.1模塊分析4.2數(shù)據(jù)訪問方法5物理結(jié)構(gòu)設(shè)計5.1模塊任務(wù)5.2模塊實施6系統(tǒng)主要查詢功能及SQL語句7系統(tǒng)實現(xiàn) 7.1系統(tǒng)功能模塊圖7.2部分程序代碼7.3系統(tǒng)運行截圖8設(shè)計小結(jié)8.1心得與體會8.2存在的問題及建議參考文獻致 謝源代碼1系統(tǒng)簡介1.1設(shè)計思想 1.掌握C#的主要語法和Microsoft Visual st
9、udio 2008開發(fā)環(huán)境。2.通過C#語言編寫學(xué)生信息管理系統(tǒng)從而牢固掌握C#程序設(shè)計。3.通過編寫程序?qū)崿F(xiàn)學(xué)生信息管理系統(tǒng)進一步掌握.NET架構(gòu),加深對C#的熟練與認識。4.程序界面美觀。1.2可行性分析1.技術(shù)可行性:本系統(tǒng)采用Windows7及其以上版本作為操作平臺。數(shù)據(jù)庫管理系統(tǒng)選用SQL,該數(shù)據(jù)庫管理系統(tǒng),提供數(shù)據(jù)庫之間的數(shù)據(jù)復(fù)制功能,可代替現(xiàn)有系統(tǒng)單據(jù)數(shù)據(jù)的手工傳遞工作,降低出錯率,提高數(shù)據(jù)的可用性。本系統(tǒng)的應(yīng)用程序開發(fā)平臺選用Microsoft Visual studio 2008。2經(jīng)濟可行性:采用前臺學(xué)籍信息管理系統(tǒng)可取代原系統(tǒng)的單手工傳遞工作,減少人工開支,節(jié)省資金,并且
10、可大大提高信息量的取得,縮短信息處理周期提高學(xué)生信息的利用率,使教學(xué)質(zhì)量更上一個臺階。3營運可行性:本系統(tǒng)操作簡單,易于理解,只需通過簡單培訓(xùn),上手較快,學(xué)校學(xué)籍管理處的教職員以及相關(guān)教師均能進行操作,營運環(huán)境要求低。面對于系統(tǒng)設(shè)計還應(yīng)該以“標準性、安全性、高效性、保密性、可維護性”為標準,在著眼于當(dāng)前實用的基礎(chǔ)上,為將來系統(tǒng)的擴展,升級留有余地。軟件的開發(fā)應(yīng)能在較長時間內(nèi)滿足學(xué)校的發(fā)展需要。標準性:系統(tǒng)編寫與運行必須符合標準,既可以保證系統(tǒng)運行又可以在此標準上每一項功能運行??煽啃裕河捎趯W(xué)籍信息的重要性,系統(tǒng)必須穩(wěn)定可靠,從而避免或減少數(shù)據(jù)損失。安全性:通過系統(tǒng)權(quán)限控制使用者,從而確保使用者
11、無法操作與其無關(guān)的數(shù)據(jù)。高效性:由于學(xué)校學(xué)生信息每次處理信息量較大,系統(tǒng)對信息處理能力響應(yīng)能力都應(yīng)是快捷有效的??删S護性:采用結(jié)構(gòu)化模塊設(shè)計,便于開發(fā)與維護,也有利于情況隨時修復(fù)處理。1.3小組分工本小組2個人共同完成學(xué)生信息管理系統(tǒng),具體分工如下:1.組長杜政毅主要負責(zé)代碼的編寫和調(diào)試;2.組員曹冠平負責(zé)建立數(shù)據(jù)庫和文檔編寫。2. 需求分析2.1范圍本指南用于指導(dǎo)軟件開發(fā)者為學(xué)生信息管理系統(tǒng)的開發(fā)過程,通過規(guī)范軟件項目承擔(dān)軟件的開發(fā)過程達到提高軟件質(zhì)量,降低維護成本的目的。開發(fā)者應(yīng)根據(jù)本指南進行軟件開發(fā)和編制軟件開發(fā)文檔。本指南是對軟件項目承擔(dān)單位的基本要求。在進行具體軟件開發(fā)時,開發(fā)者可根
12、據(jù)實際情況采編寫。2.2信息需求 我們將管理體制和建立各種管理規(guī)范與開發(fā)信息系統(tǒng)有機地結(jié)合起來,通過幾個功能模塊進行統(tǒng)一管理,要求管理系統(tǒng)滿足以下幾個方面的要求: 從用戶角度來看,系統(tǒng)首先應(yīng)該能夠提供便捷與強大的信息查詢功能;對于學(xué)校的全體教師而言,他們應(yīng)該能夠?qū)ο到y(tǒng)的不同部分有各自不同的權(quán)限。 具有較強的靈活性及可擴展性,能夠存儲一定數(shù)量的學(xué)生信息,并方便有效地進行相應(yīng)的數(shù)據(jù)操作和管理。這主要包括:學(xué)生信息的錄入、刪除及修改,各種信息的單條件查詢和多條件的組合查詢,以及學(xué)生各科信息的多關(guān)鍵字檢索查詢。 具有較高的安全性,系統(tǒng)登錄有各自的安全賬戶。系統(tǒng)管理員可添加用戶信息,更改用戶信息和刪除用
13、戶信息,同時可以針對其他的信息具有所有的權(quán)限;任課教師可以錄入信息;學(xué)生只能對所有的信息具有查詢的功能,不具有修改、刪除和錄入的權(quán)限。系統(tǒng)能夠提供數(shù)據(jù)信息授權(quán)訪問,防止隨意刪改等。2.3總體功能要求學(xué)生信息管理系統(tǒng)的用戶主要有兩類:學(xué)生用戶、管理員用戶。學(xué)生信息管理系統(tǒng)主要分為四種模塊:錄入模塊、刪除模塊、修改模塊、查找模塊。逐步對各個模塊的代碼書寫,實現(xiàn)多種功能,讓用戶快速而便捷地使用學(xué)生信息管理系統(tǒng)。用戶可以錄入學(xué)生信息,輸入學(xué)生的學(xué)號從而刪除學(xué)生信息、查找學(xué)生信息、修改學(xué)生信息。 1.功能模塊總圖(圖2.1)。圖2.1 功能模塊總圖2.學(xué)生用戶主要具備的功能需求:(1)學(xué)生只是利用此系統(tǒng)
14、進行與自己有關(guān)的信息查詢、輸入等;(2)瀏覽個人基本信息,具體內(nèi)容包括姓名、學(xué)號、民族、出生日期、籍貫、所在班級、備注等;(3)瀏覽課程信息,具體內(nèi)容包括課程名、課程類型、學(xué)時、學(xué)分和課程具體描述;(4)學(xué)生利用此系統(tǒng)選修課程、在選課過程中,可查詢待選課程基本信息;(5)瀏覽個人選課情況。3.管理員用戶主要具備的功能需求:(1)管理員權(quán)限最大,可以對學(xué)生、班級、課程情況進行統(tǒng)一的管理,細分如下:(2)添加、修改、刪除管理員;(3)有關(guān)學(xué)生信息的瀏覽,包括學(xué)生姓名、性別、民族、出生日期、入學(xué)時間、所在班級、籍貫和備注信息;(4)學(xué)生信息的添加、修改和刪除;(5)學(xué)校基本課程的瀏覽,包括課程名、課
15、程類型、學(xué)時、學(xué)分和課程具體描述;(6)學(xué)校基本課程的添加、修改和刪除;(7)學(xué)生成績信息的瀏覽與統(tǒng)計,可按成績具體范圍對成績進行統(tǒng)計;(8)學(xué)生成績信息的添加、修改和刪除;(9)學(xué)生選課信息的管理,包括修改與刪除;(10)學(xué)生選課人數(shù)的統(tǒng)計。2.4運行環(huán)境1.硬件平臺:普通電腦;2.操作系統(tǒng):Windows7以上版本;3.支撐環(huán)境和版本:主程序采用C#語言編寫,數(shù)據(jù)庫支持access與SQL sever;2.5 數(shù)據(jù)定義1.用戶信息數(shù)據(jù)表(Users):用戶名:User_id;用戶密碼:User_password;用戶類型:User_power.2. 學(xué)生信息數(shù)據(jù)表(Student):學(xué)生學(xué)
16、號:Student_id;學(xué)生姓名:Student_name;學(xué)生性別:Student_sex;學(xué)生民族:Student_nation;學(xué)生出生日期:Student_birthday;學(xué)生入學(xué)時間:Student_time;學(xué)生所在班級:Student_class;學(xué)生住址:Student_home;備注: Student_else.3. 課程信息數(shù)據(jù)表(Course):課程號:Course_id;課程名:Course_name;課程學(xué)分:Course_credit;課程學(xué)時:Course_period;課程描述:Course_describe.4. 學(xué)生選課記錄數(shù)據(jù)表(Student_Cou
17、rse):學(xué)生選課記錄ID:ID;學(xué)生成績:Student_grade;年度學(xué)期:Course_year.3數(shù)據(jù)庫設(shè)計3.1系統(tǒng)E-R圖1. 學(xué)生管理系統(tǒng)實體間關(guān)系E-R圖(圖3.1)圖3.1 學(xué)生管理系統(tǒng)實體間關(guān)系2. 學(xué)生管理系統(tǒng)用戶信息實體(圖3.2)圖3.2 學(xué)生管理系統(tǒng)用戶信息實體圖3. 學(xué)生管理系統(tǒng)學(xué)生信息實體(圖3.3)圖3.3學(xué)生管理系統(tǒng)學(xué)生信息實體 4. 學(xué)生管理系統(tǒng)課程信息實體(圖3.4)圖3.4學(xué)生管理系統(tǒng)課程信息實體5. 學(xué)生管理系統(tǒng)學(xué)生-課程信息實體(圖3.5)圖3.5學(xué)生管理系統(tǒng)學(xué)生-課程信息實體3.2表/字段分析1.用戶信息數(shù)據(jù)表(Users):2. 學(xué)生信息數(shù)據(jù)
18、表(Student):3. 課程信息數(shù)據(jù)表(Course):4. 學(xué)生選課記錄數(shù)據(jù)表(Student_Course):4.程序設(shè)計模塊學(xué)生信息管理系統(tǒng)是一個典型的數(shù)據(jù)庫應(yīng)用程序,由用戶管理、課程管理、選課管理和成績管理四大模塊組成;這四大模塊針對管理員和學(xué)生角色其功能也不一樣。4.1模塊分析1.用戶管理模塊:該模塊的主要任務(wù)是管理員對系統(tǒng)的使用權(quán)限進行設(shè)定,從而來管理管理員與學(xué)生的系統(tǒng)登錄權(quán)限。其模塊圖如圖4.1所示:圖4.1 用戶登錄模塊圖2.課程管理模塊:該模塊的使用角色為管理員,管理員對課程進行管理;如添加、修改、刪除課程。其模塊圖如圖4.2所示:圖4.2 課程管理模塊圖3.選課管理模塊
19、:該模塊的角色為管理員和學(xué)生。學(xué)生可以進行合理的選課、退選課,管理員則通過此模塊查看學(xué)生選課信息。其模塊圖如圖4.3所示:圖4.3 選課模塊圖4.成績管理模塊:該模塊的角色為管理員,管理員通過此模塊進行合理的成績添加。4.2數(shù)據(jù)訪問方法1.模塊任務(wù)創(chuàng)建學(xué)生信息管理系統(tǒng)中的各個操作類。2.模塊指標創(chuàng)建學(xué)生信息管理系統(tǒng)的操作類:DataAccess類、StudentInfoOperation類、和UserInfoOperation類。針對數(shù)據(jù)表中的數(shù)據(jù)信息進行實體類的定義之后,需要針對這些數(shù)據(jù)表中的內(nèi)容,定義針對數(shù)據(jù)的增、刪、改和查等數(shù)據(jù)訪問操作類。3.模塊實施(1)數(shù)據(jù)訪問類DataAccess
20、.cs類的訪問修飾符設(shè)為public,設(shè)置為公開的,這樣才可以被其他類訪問。但是在定義DataAccess.cs類之前,需要引用命名空間,如下所示:usingSystem.Data;usingSystem.Data.SqlClient;DataAccess.cs類主要是實現(xiàn)數(shù)據(jù)庫連接及對SQL命令的執(zhí)行。publicclassDataAccess首先在DataAccess.cs類中定義靜態(tài)連接字符串ConnectionString,其代碼如下所示:publicstaticstringConnectionString=datasource=.;database=SSCGGL;integrated
21、security=true;publicboolExecuteSQL(stringsql)publicSqlDataReaderGetReader(stringsql)publicDataSetGetDataSet(stringsql,stringtablename)publicintGetCount(stringsql)publicboolCheckAdmin(stringstrname,stringstrpwd)(2)學(xué)生操作類StudentInfoOperation.cs類的訪問修飾符設(shè)為public,設(shè)置為公開的,這樣才可以被其他類訪問。StudentInfoOperation.cs類
22、主要是實現(xiàn)對學(xué)生信息的操作,針對數(shù)據(jù)庫中的StudentInfo表進行增刪改查操作。定義StudentInfoOperation.cs類的形式如下所示:publicclassStudentInfoOperation在該類中,定義的方法都是需要調(diào)用數(shù)據(jù)訪問類DataAccess.cs中的方法,因此需要首先實例化數(shù)據(jù)訪問類DataAccess類的對象。定義的代碼如下所示:privatestaticDataAccessdataAccess=newDataAccess();publicstaticboolinsertStudentInfo(StudentInfoDatastudentInfoData)
23、publicstaticboolupdateStudentInfo(StudentInfoDatastudentInfoData)publicstaticbooldeleteStudentInfo(stringsno)publicstaticDataSetgetStudentInfo(StudentInfoDatastudentInfoData)(3)用戶操作類UserInfoOperation.cs類的訪問修飾符設(shè)為public,設(shè)置為公開的,這樣才可以被其他類訪問。UserInfoOperation.cs類主要是實現(xiàn)對用戶信息的操作,針對數(shù)據(jù)庫中的UserInfo表進行增刪改查操作。定義U
24、serInfoOperation.cs類的形式如下所示:PublicclassUserInfoOperation在該類中,定義的方法都是需要調(diào)用數(shù)據(jù)訪問類DataAccess.cs中的方法,因此需要首先實例化數(shù)據(jù)訪問類DataAccess類的對象。定義的代碼如下所示:privatestaticDataAccessdataAccess=newDataAccess();publicstaticboolinsertUserInfo(UserInfoDatadata)publicstaticboolupdateUserInfo(UserInfoDatadata)publicstaticbooldele
25、teUserInfo(stringuserid)publicstaticDataSetgetUserInfo(UserInfoDatadata)publicstaticDataSetgetUserInfoAll(UserInfoDatadata)5窗體和事件應(yīng)用5.1模塊任務(wù)1.創(chuàng)建學(xué)生信息管理系統(tǒng)中的各個窗體2.實現(xiàn)對用戶、學(xué)生信息的增刪改查功能創(chuàng)建學(xué)生信息管理系統(tǒng)的窗體:Longin.cs登錄窗體、Form3.cs主窗體、AddGrade.cs添加學(xué)生成績窗體、Form7.cs課程信息查詢窗體、Form8.cs用戶修改密碼窗體、Form1.cs學(xué)生查詢窗體、Form9.cs用戶注冊窗體。3
26、.模塊的提出窗體是進行用戶體驗的最好方式,當(dāng)用戶使用學(xué)生信息管理系統(tǒng)的時候,窗體是用戶直接使用的界面,因此需要設(shè)計合理并便于用戶操作。5.2模塊實施1.Longin.cs登錄窗體Longin.cs窗體是用戶進行登錄所使用的窗體,主要包含Label標簽、TextBox文本框和Button按鈕。用戶輸入用戶名和密碼之后,點擊“登錄”按鈕,可以驗證用戶身份的合理性,用戶身份有效可以登錄到主界面中。如圖5.1所示。圖5.1學(xué)生信息管理系統(tǒng)的主界面2. Form3.cs主窗體Form3.cs窗體為主窗體,窗體上包含了所有模塊的菜單項,但是系統(tǒng)根據(jù)用戶的權(quán)限,來設(shè)置菜單項中的哪些模塊是可以使用的,哪些模塊
27、是不可以使用的。首先在Form3.cs主窗體主界面的構(gòu)造函數(shù)中,進行用戶權(quán)限的判斷,如果是學(xué)生或者教師登錄,那么只允許部分模塊進行操作,只有管理員可以所有模塊都進行操作。首先創(chuàng)建UserInfoData用戶實體類的對象data,并且將Form3.cs窗體中用戶登錄的名字賦值給data對象的Userid屬性,創(chuàng)建數(shù)據(jù)集ds來獲取UserInfoOperation用戶操作類中的getUserInfoAll()方法中用戶記錄。如果用戶記錄不為空,那么獲取該用戶的Userlevel字段的值,該值如果為學(xué)生或者教師,那么部分模塊的Enabled屬性設(shè)置為false,讓這些模塊不可用。如果為管理員,那么默
28、認的所有的模塊都是可用的,也就是所有模塊菜單的Enabled屬性的初值均為true。如圖5.2所示。圖5.2學(xué)生信息顯示界面3.AddGrade.cs添加學(xué)生成績窗體AddGrade.cs窗體主要是用來添加學(xué)生的成績,輸入學(xué)號、姓名、性別、出生日期、家庭住址、家庭電話和所在班級,點擊“保存”按鈕即可錄入或者修改學(xué)生信息記錄,點擊“取消”按鈕,退出學(xué)生信息添加窗體。如圖5.3所示。圖5.3AddGrade.cs窗體4.Form7.cs課程信息查詢窗體Form7.cs窗體主要是實現(xiàn)登錄用戶的課程信息查詢。使用該窗體可以查詢某一學(xué)科的各種信息。如圖5.4所示。圖5.4Form7.cs窗體5. For
29、m8.cs用戶修改密碼窗體Form8.cs窗體主要是實現(xiàn)用戶修改密碼的功能。該窗體中,可以通過輸入用戶名和原密碼,然后輸入新密碼和確認新密碼,來修改用戶的登錄密碼。如圖5.5所示。圖5.5Form8.cs窗體6.Form1.cs學(xué)生查詢窗體Form1.cs窗體主要是實現(xiàn)學(xué)生信息查詢功能。該窗體中,可以通過學(xué)生學(xué)號、學(xué)生姓名、性別或班級信息進行查詢,窗體中有一個DataGridView控件,當(dāng)查詢出結(jié)果后,可以選中控件中的一條記錄,進行刪除或者修改操作。如圖5.6所示。圖5.6Form1.cs窗體 7. Form9.cs用戶注冊窗體Form9.cs窗體主要是實現(xiàn)用戶信息查詢功能。該窗體中,可以通
30、過用戶名或者用戶類型進行查詢,窗體中有一個DataGridView控件,當(dāng)查詢出結(jié)果后,可以選中控件中的一條記錄,進行刪除或者修改操作。如圖5.7所示。圖5.7 Form9.cs窗體總 結(jié)在進行本次課程設(shè)計時,我遇到了很多困難和學(xué)習(xí)到了很多知識。下面我將主要總結(jié)我所遇到的困難,及自己的解決方法。以及自己學(xué)到的知識點。開始著手在C#中建立與SQL數(shù)據(jù)庫連接時,連接數(shù)據(jù)庫時在連接句前加上字符相對于單一的連接語句更容易連接得上。在對DataAdapter數(shù)據(jù)集中數(shù)據(jù)表的行數(shù)據(jù)、列名進行修改時,可以通過數(shù)據(jù)集中表的行二維數(shù)組dataset.Tablest.Rowsij.ToString()來實現(xiàn),其中
31、i為行標,j為列標。在對數(shù)據(jù)行數(shù)進行讀取時,可采用dataset.Tablest.Rows.Count來實現(xiàn)。學(xué)生在從第一個登錄界面窗體登錄學(xué)號進入信息查看界面窗體時,要保證學(xué)號信息能準確無誤的傳輸?shù)叫畔⒉榭唇缑娲绑w才可以在信息查看窗體中查看該學(xué)生的個人信息。開始時我只是在信息窗體Form8中實例化Form1對象,結(jié)果無法獲取Form1窗口中的textBox1.Text中的學(xué)生學(xué)號信息。經(jīng)過進一步查找資料,我明白了在信息窗體Form8中調(diào)用Form1中的屬性或函數(shù),與在Form1中調(diào)用Form8中的屬性或函數(shù)不一樣。窗體Form1下,其中的屬性和函數(shù)都有確定的值或表達式,直接調(diào)用Form8將值
32、傳進去可行,因為此時Form1中的數(shù)據(jù)存在;而在Form8窗體中調(diào)用Form1窗體中的函數(shù)和屬性,則Form1窗體已經(jīng)關(guān)閉,改窗體中的textBox1.Text也就無值了,獲取該窗體中textBox1.Text中的學(xué)生學(xué)號信息也就無法實現(xiàn)。通過編寫代碼,使我很熟練的可以運用C#中的數(shù)據(jù)集Dataset、Connection對象、Command對象、DataResder對象和DataAdapter對象。并對SQL的select、insert、delete、update熟練掌握。參考文獻1 張海潘. 軟件工程導(dǎo)論(第四版)M. 清華大學(xué)出版社, 2003.122 薩師煊, 王珊. 數(shù)據(jù)庫系統(tǒng)概論M
33、. 高等教育出版社, 2002.33 陳承歡, 彭勇. 管理信息系統(tǒng)基礎(chǔ)與開發(fā)技術(shù)M. 人民郵電出版社, 20054 劉云生, 盧正鼎, 盧炎生. 數(shù)據(jù)庫系統(tǒng)概論M. 華中科技大學(xué)出版社, 2002 5 鄭人杰, 殷人昆, 陶永雷. 實用軟件工程M. 清華大學(xué)出版社, 19976 唐政,房大偉.C#項目開發(fā)全程實錄M.清華大學(xué)出版社,2008.67 黃銳軍.C#程序設(shè)計項目實訓(xùn)教程M.化學(xué)工業(yè)出版社,2010.28 呂高旭.Visual C#范例精要解析M.清華大學(xué)出版社,2008.1致 謝時間如白駒過隙轉(zhuǎn)瞬即逝,不經(jīng)意間兩周的時間已經(jīng)過去。但是這短短的兩周時間里我感受到了最真誠的青春,最純真
34、的歲月,最美麗的大學(xué)生活。我們的動手能力得到提升。感謝朱老師對我們的幫助。使我們不但豐富了知識,更使我們提高了動手能力。您對我們孜孜不倦的教導(dǎo)讓我順利的完成了這次課程設(shè)計。 在這次的課程設(shè)計中我運用了我在課堂上所學(xué)到的文化知識和技能,讓我重新認識到編程的樂趣。在此,我再次感謝朱老師的幫助和教導(dǎo)跟小伙伴的協(xié)作。源代碼1.AddGrade.Cs窗體using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.L
35、inq;using System.Text;using System.Threading.Tasks;using System.Windows.Forms;namespace WindowsFormsApplication2 public partial class AddGrade : Form public AddGrade() InitializeComponent(); private void student_CourseBindingNavigatorSaveItem_Click(object sender, EventArgs e) this.Validate(); this.s
36、tudent_CourseBindingSource.EndEdit(); this.tableAdapterManager.UpdateAll(this.學(xué)生信息管理系統(tǒng)DataSet); private void AddGrade_Load(object sender, EventArgs e) / TODO: 這行代碼將數(shù)據(jù)加載到表“學(xué)生信息管理系統(tǒng)DataSet.Student_Course”中。您可以根據(jù)需要移動或刪除它。 this.student_CourseTableAdapter.Fill(this.學(xué)生信息管理系統(tǒng)DataSet.Student_Course); privat
37、e void label1_Click(object sender, EventArgs e) this.Hide(); new serchStudent().Show(); private void student_CourseDataGridView_CellContentClick(object sender, DataGridViewCellEventArgs e) 2.學(xué)生個人信息窗體using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using Sys
38、tem.Drawing;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows.Forms;namespace WindowsFormsApplication2 public partial class Form1 : Form public Form1() InitializeComponent(); private void studentBindingNavigatorSaveItem_Click(object sender, EventArgs e) this.Valid
39、ate(); this.studentBindingSource.EndEdit(); this.tableAdapterManager.UpdateAll(this.學(xué)生信息管理系統(tǒng)DataSet); private void Form1_Load(object sender, EventArgs e) / TODO: 這行代碼將數(shù)據(jù)加載到表“學(xué)生信息管理系統(tǒng)DataSet.Student”中。您可以根據(jù)需要移動或刪除它。 this.studentTableAdapter.Fill(this.學(xué)生信息管理系統(tǒng)DataSet.Student); 3.Form3.cs窗體using System
40、;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows.Forms;namespace WindowsFormsApplication2 public partial class Form3 : Form public string sno; public Form3(string
41、 sno) this.sno = sno; InitializeComponent(); private void Form3_Load(object sender, EventArgs e) private void button1_Click(object sender, EventArgs e) this.Hide(); Form1 form1 = new Form1(); form1.Show(); private void button2_Click(object sender, EventArgs e) this.Hide(); Form5 form5 = new Form5();
42、 form5.Show(); private void button3_Click(object sender, EventArgs e) this.Hide(); Form6 form6 = new Form6(); form6.Show(); private void button4_Click(object sender, EventArgs e) this.Hide(); Form7 form7 = new Form7(); form7.Show(); private void button5_Click(object sender, EventArgs e) this.Hide();
43、 Form8 xiugai = new Form8(sno); xiugai.Show(); private void button6_Click(object sender, EventArgs e) System.Environment.Exit(0); this.Close(); 4.課程信息窗體using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text
44、;using System.Threading.Tasks;using System.Windows.Forms;namespace WindowsFormsApplication2 public partial class Form5 : Form public Form5() InitializeComponent(); private void courseBindingNavigatorSaveItem_Click(object sender, EventArgs e) this.Validate(); this.courseBindingSource.EndEdit(); this.
45、tableAdapterManager.UpdateAll(this.學(xué)生信息管理系統(tǒng)DataSet); private void Form5_Load(object sender, EventArgs e) / TODO: 這行代碼將數(shù)據(jù)加載到表“學(xué)生信息管理系統(tǒng)DataSet.Course”中。您可以根據(jù)需要移動或刪除它。 this.courseTableAdapter.Fill(this.學(xué)生信息管理系統(tǒng)DataSet.Course); private void button1_Click(object sender, EventArgs e) this.Close(); 5.成績信息窗
46、體using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Data.SqlClient;using System.Drawing;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows.Forms;namespace WindowsFormsApplication2 public partial class Form6 : Fo
47、rm public Form6() InitializeComponent(); private void Form6_Load(object sender, EventArgs e) DataTable table= SqlHelPer.ExecuteDataTable(SELECT Course_name FROM Course); foreach (DataRow row in table.Rows) foreach(DataColumn col in table.Columns) comboBox1.Items.Add(rowcol); private void button2_Cli
48、ck(object sender, EventArgs e) string StudentID = textBox2.Text; string CourseName = comboBox1.Text; string CourseID = null; DataTable table1 =SqlHelPer.ExecuteDataTable(select Course_id from Course where Course_name=name,new SqlParameter(name,CourseName); DataRow row1=table1.Rows0; CourseID = (string)row10; DataT
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 微課程設(shè)計與制作學(xué)習(xí)
- 嬰幼兒教師課程設(shè)計
- 食品銷售企業(yè)食品銷售協(xié)議
- 廣告推廣與受眾關(guān)系考核試卷
- 就業(yè)信息數(shù)據(jù)庫構(gòu)建考核試卷
- 智能倉儲管理系統(tǒng)升級與維護服務(wù)方案
- 合成革在寵物用品市場的應(yīng)用與創(chuàng)新考核試卷
- 游戲開發(fā)與優(yōu)化實戰(zhàn)指南
- 新興產(chǎn)業(yè)創(chuàng)新發(fā)展政策及支持措施研究報告
- 工業(yè)自動化設(shè)備的自適應(yīng)性設(shè)計考核試卷
- 商務(wù)服務(wù)機器人技術(shù)現(xiàn)狀與未來發(fā)展趨勢研究
- 工業(yè)物聯(lián)網(wǎng)(IIoT)行業(yè)發(fā)展全景調(diào)研與投資趨勢預(yù)測研究報告
- 金融數(shù)據(jù)分析-以Python為工具 課件 一、金融數(shù)據(jù)分析概覽
- 佛山市、三水區(qū)2022-2023學(xué)年七年級上學(xué)期期末地理試題【帶答案】
- 2024屆湖北高三元月調(diào)考數(shù)學(xué)試卷含答案
- DL∕T 1476-2023電力安全工器具預(yù)防性試驗規(guī)程
- 西方園林史智慧樹知到期末考試答案章節(jié)答案2024年內(nèi)蒙古農(nóng)業(yè)大學(xué)
- 學(xué)年上學(xué)期期末職業(yè)高中高二年級數(shù)學(xué)練習(xí)試卷2
- 工程部設(shè)計部崗位職責(zé)
- 華為MA5800配置及調(diào)試手冊
- 學(xué)校后備干部培養(yǎng)選拔實施方案
評論
0/150
提交評論