《學(xué)生成績管理系統(tǒng) 課程設(shè)計》由會員分享,可在線閱讀,更多相關(guān)《學(xué)生成績管理系統(tǒng) 課程設(shè)計(12頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、 課程設(shè)計報告課程名稱 Visual C#.Net 程序設(shè)計教程 項目名稱 學(xué)生成績管理系統(tǒng) 班級與班級代碼 09信管一班 實驗室名稱(或課室) S-403 專 業(yè) 信息管理與信息系統(tǒng) 任課教師 朱若磊 學(xué) 號: 09251101121 姓 名: 李建波 提交日期: 2012 年 6 月 28 日 廣東商學(xué)院教務(wù)處 制姓名 李建波 報告成績 評語: 指導(dǎo)教師(簽名) 年 月 日說明:指導(dǎo)教師評分后,實驗報告交院(系)辦公室保存。.NET程序設(shè)計開發(fā)課程設(shè)計項目任務(wù):(本人)一、項目名稱學(xué)生成績管理系統(tǒng)二、項目背景 在21世紀(jì)的科技時代,科學(xué)技術(shù)突飛猛進,計算機已經(jīng)不僅是在科技上應(yīng)用,而且在生活
2、中也是同樣得到了廣泛在應(yīng)用。如今,不管是小學(xué),初中,高中,甚至是很多大學(xué)生的學(xué)生成績管理基本上是靠人工進行管理,但隨著時間的變化,學(xué)校規(guī)模的擴大,有關(guān)學(xué)生成績管理工作和所涉及到的數(shù)據(jù)量越來越大越來越多,大多數(shù)學(xué)校不得不靠增加人力,物力,財力來進行學(xué)生成績管理。但是人工管理成績檔案具有效率低,查找麻煩,可靠性不高,保密性低等因素。因此開發(fā)出一個不僅僅是適用于大中專院校以及其它高校通用的學(xué)生成績管理系統(tǒng)是必要的。 本團隊就此開發(fā)一個學(xué)生成績管理系統(tǒng),采用計算機對學(xué)生成績進行管理,以進一步提高辦學(xué)效益和現(xiàn)代化水平,為廣大教師和學(xué)生提高工作效率,實現(xiàn)學(xué)生成績信息管理工作流程的系統(tǒng)化,規(guī)范化和自動化。
3、三、開發(fā)環(huán)境分析使用Microsoft Visual Studio 2005開發(fā)、使用C#.NET語言編程,后臺數(shù)據(jù)庫選擇SQL Server 2005。四、項目要求設(shè)計一個比較完善的學(xué)生選課管理系統(tǒng),其中要求后臺的數(shù)據(jù)庫利用SQL Server來完成(可以使用.NET自帶的SQL Express),功能具體要求如下:(1)登錄功能;(2)學(xué)生信息管理功能;(3)課程信息管理功能;(4)學(xué)生成績管理功能;(5)實現(xiàn)將查詢結(jié)果保存到硬盤的功能;(6)修改相關(guān)數(shù)據(jù)庫結(jié)構(gòu)并據(jù)此實現(xiàn)基本選課功能(7)任選(1)(4)項中的一項,將其利用ASP.NET來實現(xiàn);設(shè)計項目成立與項目實施一、 項目組長組長:李
4、建波二、 設(shè)計項目分工小組成員:彭健鋒,陳志明,張?zhí)?,周敏強,成思謀,李建波。小組分工情況如下:一、項目組長:組長:李建波二、設(shè)計項目分工:小組成員:彭健鋒,陳志明,張?zhí)?,周敏強,成思謀,李建波。小組分工情況如下:1、張?zhí)帲贺?fù)責(zé)登錄功能:Login.cs;并將其利用ASP.NET來實現(xiàn);2、彭健鋒:負(fù)責(zé)學(xué)生信息添加(StudentMsgFrm.cs)、管理功能(StudentFrm.cs);3、陳志明:負(fù)責(zé)課程信息添加(CourseMsgFrm.cs)和管理功能(CourseFrm.cs);4、成思謀:負(fù)責(zé)學(xué)生成績管理功能(ScoreMsgFrm.cs);5、周敏強:實現(xiàn)將查詢結(jié)果保存到
5、硬盤的功能(select)(統(tǒng)一數(shù)據(jù)庫);6、李建波:實現(xiàn)學(xué)生基本選課功能(整合全部功能)(selectcourse)。三、 項目實施過程:1、數(shù)據(jù)庫設(shè)計和連接是使用SQL Server 2005設(shè)計的,在.Net用connectionString連接數(shù)據(jù)庫。關(guān)鍵代碼如下: InitializeComponent(); connString = Data Source=local;Initial Catalog=MySchool;Integrated Security=True; connection = new SqlConnection(connString); catch (Except
6、ion ex) MessageBox.Show(ex.Message,數(shù)據(jù)庫操作出錯了!, MessageBoxButtons.OK,MessageBoxIcon.Exclamation); 2、實現(xiàn)學(xué)生基本選課功能(整合全部功能),新建一個selectcourse.cs窗體,在窗體添加3個label控件,1個listbox控件,1個Richtxtbox和2個Button,設(shè)置兩個數(shù)據(jù)源MySchoolDataSet1,MySchoolDataSet22.1按下列要求修改屬性項:控件屬性屬性設(shè)置控件屬性屬性設(shè)置Label1NameLabelListboxNameCdoclassText名字La
7、bel2NameLabel2RichtxtboxNameRichtxtboxText信息如下:Label3NameLabel3Button1NameButton1TextText選他了MySchoolDataSetButton2NameButton2Text退出如下圖:2.1圖:2.1界面設(shè)計2.4設(shè)計的關(guān)鍵代碼:using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using Syste
8、m.Windows.Forms;using MySchool;using System.Data.SqlClient;namespace MySchool public partial class selectcourse : Form public selectcourse() InitializeComponent(); private void selectcourse_Load(object sender, EventArgs e) / TODO: 這行代碼將數(shù)據(jù)加載到表“mySchoolDataSet2.CourseMsg”中。您可以根據(jù)需要移動或移除它。 this.courseMs
9、gTableAdapter1.Fill(this.mySchoolDataSet2.CourseMsg); / TODO: 這行代碼將數(shù)據(jù)加載到表“mySchoolDataSet.CourseMsg”中。您可以根據(jù)需要移動或移除它。 this.courseMsgTableAdapter.Fill(this.mySchoolDataSet.CourseMsg); string connString = Data Source=(local);Initial Catalog=MySchool;Integrated Security=True; SqlConnection connection =
10、new SqlConnection(connString); string sql = String.Format(select cc from tablea where enroll=1); connection.Open(); SqlCommand command = new SqlCommand(sql, connection); string num =(string )command.ExecuteScalar(); string message = String.Format(你好! 0先生, num); label3.Text = num; label1.Text = messa
11、ge; connection.Close(); private void aa_Click(object sender, EventArgs e) string connString = Data Source=(local);Initial Catalog=MySchool;Integrated Security=True; SqlConnection connection = new SqlConnection(connString); string sql = String.Format(update tablea set enroll=0 where enroll=1); connec
12、tion.Open(); SqlCommand command = new SqlCommand(sql, connection); command.ExecuteNonQuery(); this.Close(); private void cboClass_SelectedIndexChanged(object sender, EventArgs e) string kk = cboClass.Text; string connString = Data Source=(local);Initial Catalog=MySchool;Integrated Security=True; Sql
13、Connection connection = new SqlConnection(connString); string sql = String.Format(select CourseClass from CourseMsg where CourseName=0,kk); string sql2 = String.Format(select Credit from CourseMsg where CourseName=0, kk); string sql3 = String.Format(select PrelectionCredit from CourseMsg where Cours
14、eName=0, kk); string sql4 = String.Format(select ExperimentCredit CourseMsg where CourseName=0, kk); connection.Open(); SqlCommand command = new SqlCommand(sql, connection); SqlCommand command2 = new SqlCommand(sql2, connection); SqlCommand command3= new SqlCommand(sql3, connection); SqlCommand comm
15、and4 = new SqlCommand(sql3, connection); string num = (string)command.ExecuteScalar(); int num2 = (int)command2.ExecuteScalar(); int num3 = (int)command3.ExecuteScalar(); int num4 = (int)command4.ExecuteScalar(); string message = String.Format(0, num); richTextBox1.Text = message; label2.Text = 學(xué)分+n
16、um2+理論課時:+num3+實驗課時+num4; connection.Close(); private void button1_Click(object sender, EventArgs e) string connString = Data Source=(local);Initial Catalog=MySchool;Integrated Security=True; SqlConnection connection = new SqlConnection(connString); string sql = String.Format(INSERT INTO ScoreMsgMe(
17、StudentName,CourseName,Score) VALUES(0,1,2), label3.Text, cboClass.Text, 0); connection.Open(); SqlCommand command = new SqlCommand(sql, connection); command.ExecuteNonQuery(); 四、 結(jié)果演示: 數(shù)據(jù)庫設(shè)計1 ER圖E-r圖,如上圖2 數(shù)據(jù)庫表學(xué)生課程關(guān)系圖User表結(jié)構(gòu)列名數(shù)據(jù)類型說明UserNamenvarchar(50)管理員用戶名,不允許為空,主鍵passwordnvarchar(50)管理員密碼,不允許為空St
18、udentMsg表結(jié)構(gòu)列名數(shù)據(jù)類型說明StudentNoint(4)學(xué)號,主鍵,標(biāo)識列StudentNamenvarchar(50)學(xué)生姓名,不允許為空sexnchar(10)性別departmentnvarchar(50)院系specialitynvarchar(50)專業(yè)Hobbynvarchar(200)興趣愛好passwordnvarchar(8)學(xué)生登錄密碼,默認(rèn)值1111enrollbit(1)學(xué)生登錄狀態(tài),默認(rèn)值為0CourserMsg表結(jié)構(gòu)列名數(shù)據(jù)類型說明CouresIdint(4)課程編號,主鍵,標(biāo)識列CourseNamenvarchar(50)課程名稱,不允許為空Cours
19、eClassnvarchar(50)課程類別Requiredbit(1)是否必修Creditint(4)學(xué)分PrelectionCreditint(4)理論學(xué)時ExperimentCreditint(4)實驗學(xué)時ScoreMsg表結(jié)構(gòu)列名數(shù)據(jù)類型說明StudentNoint(4)學(xué)號,主鍵,外鍵CourseIdint(4)課程編號,主鍵Scoreint(4)成績User表數(shù)據(jù)StudentMsg表數(shù)據(jù)CourseMsg表數(shù)據(jù)ScoreMsg表數(shù)據(jù)2、結(jié)果演示:學(xué)生登錄圖4.2.1學(xué)生應(yīng)用界面 圖4.2.2學(xué)生選課信息:圖4.2.3選好課程后,點擊“選它了”按鈕,選課成功。信息記錄到表上。選課五、課程設(shè)計總結(jié): 本次實驗是要團隊建立一個學(xué)生成績管理系統(tǒng),以實現(xiàn)快捷,高效,準(zhǔn)確保存學(xué)生的基本信息,課程信息,成績信息,還有實現(xiàn)選課功能。