C#課程設計報告 參考模板
《C#課程設計報告 參考模板》由會員分享,可在線閱讀,更多相關《C#課程設計報告 參考模板(12頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、 作業(yè)編號2017 安徽工業(yè)大學.Net平臺與C#開發(fā)課程設計 學生管理系統(tǒng) 《 .Net平臺與C#開發(fā)課程設計》報告書 專 業(yè) 學 號 學生姓名 指導教師 分 數(shù)
2、 2017年6月 目錄 1、需求分析 3 2、總體設計 3 3、數(shù)據(jù)描述 4 4、詳細設計 6 5、主要代碼實現(xiàn)和分析 9 6、課程設計總結 12 7、參考資料 12 設計報告 1、需求分析 學生管理系統(tǒng)是針對學校人事處的大量業(yè)務處理工作而開發(fā)的管理軟件,是典型的管理系統(tǒng)(Manage System On Studant)。它是一個教育單位不可缺少的部分,它的內(nèi)容對于學校的決策者和管理者來說都至關重要,它能夠為用戶提供充足的信息和快捷的查詢手段。能有效的幫助學校和老師掌握學生的情況,為學生提供成績跟課程方面
3、的查詢。 學生用戶通過輸入學生基本信息、課程基本信息等,由系統(tǒng)自行生成相應的數(shù)據(jù)以供學生查詢,管理用戶還可以對這些基本信息進行更新和刪除,學生管理系統(tǒng)力求給用戶方便快捷的途徑去管理這些繁瑣的數(shù)據(jù)。 具體系統(tǒng)功能需求描述如下: 在學生管理系統(tǒng)中,主要有用戶登陸、班級信息管理、學生信息管理、課程信息管理、科目信息管理、成績信息管理、教師信息管理、用戶管理等功能,功能分析如下: (1)用戶登陸 學生管理系統(tǒng)用戶名及密碼驗證模式,進入學生管理系統(tǒng)前,用戶必須在登陸頁面輸入用戶名及密碼,只有驗證通過的用戶方可進入學生管理系統(tǒng)操作主界面。 (2)班級信息管理 包括3個功能模塊:
4、班級信息的添加、班級信息的修改和刪除以及班級信息的查詢。 (3)學生信息管理 包括3個功能模塊:學生個人信息的添加、學生信息的修改和刪除以及學生信息的查詢。 (4)課程信息管理 包括3個功能模塊:課程基本信息的添加、課程信息的修改和刪除以及課程信息的查詢。 (5)科目信息管理 包括3個功能模塊:科目基本信息的添加、科目信息的修改和刪除以及科目信息的查詢。 (6)成績信息管理 包括3個功能模塊:成績基本信息的添加、成績信息的修改和刪除以及成績信息的查詢。 (7)教師信息管理 包括3個功能模塊:教師基本信息的添加、教師信息的修改和教師以及課程信息的查詢。 (8)用戶管理 包
5、括2個功能模塊:用戶信息添加、用戶密碼的修改和注銷(即 重新登錄)。 2、總體設計 1、系統(tǒng)的主要功能模塊 登錄模塊、添加模塊、修改刪除模塊、查詢模塊 總體結構 圖2.1 XXXX 3、數(shù)據(jù)描述 數(shù)據(jù)庫xsglxt的表設計如下: (1) 班級表:描述班級信息 表3.1 XXXX (2)課程表:描述課程信息 (3)科目表:描述科目信息 (4)學生表:描述學生信息 (5)用戶表:描述用戶信息 (6)教師表:描述教師信息 (2)成績表:描述成績信息 4、詳細設計 界面設計 (1)登錄界面 圖4.1 XXXX
6、 該界面是本程序的入口,再輸入用戶名和密碼后只有當文本框輸入數(shù)據(jù)和數(shù)據(jù)庫的已有信息相匹配時才可進入系統(tǒng)主界面,否則會提示輸入有誤。 (2)系統(tǒng)主界面 該窗體是所有子窗體的父窗體,由此窗體可調(diào)用其他子窗體,通過子窗體實現(xiàn)相應功能。管理功能菜單包括“添加”,“修改 刪除”和“查詢”功能,系統(tǒng)菜單包括“教師管理”, “添加用戶”,“修改密碼”,“重新登錄”,“退出”功能??丶otifyIcon1和contextMenuStrip1讓系統(tǒng)運行時在通知欄顯示小圖標,在小圖標右擊時會彈出菜單。控件stutasStrip1和timer1讓系統(tǒng)運行時顯示當前時間。 (3)功能界面 功能界面因相
7、差不大,不在一一舉例,僅以班級管理為例 1、添加界面 該界面實現(xiàn)了將新的學生信息添加到數(shù)據(jù)庫班級信息表(StuB.dbo),為添加信息提供提示和相關文本框,在文本框輸入正確的信息后,單擊“確定”按鈕,軟件將所輸入的信息通過數(shù)據(jù)庫命令直接添加進數(shù)據(jù)庫班級信息表(StuB.dbo),并提示“添加成功!”在“修改 刪除”界面點擊“刷新”按鈕可看到添加結果在DataGridView控件中顯示 2修改刪除界面 該界面實現(xiàn)了對已有學生信息的修改和刪除,填入相關信息后,點擊“修改”(或“刪除”)按鈕,程序?qū)Ρ劝嗉壘幪柡笪谋究虻膬?nèi)容與數(shù)據(jù)庫班級信息表(StuB.dbo)第一列的數(shù)據(jù)是否相
8、同,如某一行的數(shù)據(jù)相同,則將文本框內(nèi)的內(nèi)容替換數(shù)據(jù)庫班級信息表(StuB.dbo)中數(shù)據(jù)相同行的原有內(nèi)容并提示“修改成功!”(或刪除數(shù)據(jù)庫班級信息表(StuB.dbo)中數(shù)據(jù)相同行)點擊“刷新”按鈕可看到修改(刪除)結果在 ;如沒有相同數(shù)據(jù)存在,則彈出提示窗口提示“修改失?。 ?。 3查詢界面 該界面實現(xiàn)了對已有學生信息的查詢,在文本框中輸入相關信息后,點擊“確定”按鈕后,與修改相同,對比輸入數(shù)據(jù)和數(shù)據(jù)庫班級信息表(StuB.dbo)的已有數(shù)據(jù),如相同,則將該行信息在DataGridView控件中顯示,如不同則不顯示。 4添加用戶界面 該界面的實現(xiàn)與添加界面相同 5、修
9、改用戶密碼界面 該界面的實現(xiàn)與修改界面相同 5、主要代碼實現(xiàn)和分析 1、用戶登錄主要代碼 if (this.textBox2.Text == "" || this.textBox1.Text == "") { MessageBox.Show("用戶名或密碼不能為空!"); } else { sql = String.Format("select * from login where username='{0}' and password='{1}'", textBo
10、x1.Text.Trim(), textBox2.Text.Trim());要執(zhí)行的SQL語句 com = new SqlCommand(sql, con); con.Open(); dr = com.ExecuteReader(); if (dr.Read()) { Form2 mf = new Form2(); mf.Show(); c
11、on.Close(); this.Hide(); } } 2、主界面主要代碼 //在通知欄顯示小圖標,程序運行時不在任務欄顯示 public Form2(){ InitializeComponent(); notifyIcon1.ContextMenuStrip = this.contextMenuStrip1; this.ShowInTaskbar = false; } //通知欄小圖標的雙擊事件:主界面最小化或打開主界面 private void notifyIcon1_DoubleClick
12、(object sender, MouseEventArgs e) { if (this.WindowState == FormWindowState.Minimized) { this.WindowState = FormWindowState.Normal; this.Activate(); } else { this.WindowState = FormWindowState.Minimized; } } //打開
13、某一界面(例:打開成績管理界面) private void 添加ToolStripMenuItem1_Click(object sender, EventArgs e) { Cjgl Cj = new Cjgl(); Cj.Show(); } 3、修改界面主代碼 SqlConnection con = new SqlConnection("Data Source=李國豪;Initial Catalog=xsgl;Integrated Security=True"); //連接數(shù)據(jù)庫 SqlCommand cmd = new SqlC
14、ommand("Insert into StuB values('" + textBox1.Text + "','" + textBox2.Text + "','" + DateTime.Parse(dateTimePicker1.Text) + "','" + textBox4.Text + "','" + textBox5.Text + "','" + comboBox1.Text + "','" + textBox6.Text + "')", con); //要執(zhí)行的SQL語句 try { con.Open();
15、 cmd.ExecuteNonQuery();//執(zhí)行 MessageBox.Show("添加成功!"); } catch (SqlException ex) { MessageBox.Show("添加失??!"+ ex.Message); } 4、修改 刪除界面主代碼 private void button5_Click(object sender, EventArgs e) { string conn
16、String = "Initial Catalog=xsgl;Data Source =李國豪;Integrated Security=true"; //連接數(shù)據(jù)庫命令 SqlConnection con = new SqlConnection(connString); if (this.textBox10.Text == "" || this.textBox11.Text == "" || this.textBox12.Text == "" || this.textBox9.Text == "" || this.textBox3.Text == "" |
17、| this.dateTimePicker2.Text == "" || boBox2.Text == "") { MessageBox.Show("必填項不能為空!"); } else { string sql = "Update StuB set 班級編號 ='" + textBox10.Text + "', 班級名稱='" + textBox11.Text + "',入學時間='" + DateTime.Parse(dateTimePicker2.Text) + "',學制=
18、" + textBox12.Text + ",專業(yè)='" + textBox9.Text + "',班主任='" + comboBox2.Text + "',備注='" + textBox3.Text + "'" + "where 班級編號='" + textBox10.Text + "'"; //要執(zhí)行的SQL語句 try { con.Open(); SqlCommand cmd = new SqlCommand(sql, con);
19、 cmd.ExecuteNonQuery(); //執(zhí)行 MessageBox.Show("修改成功!"); con.Close(); } catch (Exception ex) { MessageBox.Show("修改失??!" + ex.Message); } textBox9.Clear(); textBox10.Clear(); textBox11.
20、Clear(); textBox12.Clear();textBox3.Clear(); } } private void button6_Click(object sender, EventArgs e) { SqlConnection conn = new SqlConnection(connString); DialogResult ret = MessageBox.Show("確定要刪除嗎?", "刪除", MessageBoxButtons.OKCancel)
21、; if (ret == DialogResult.Cancel) return; string sql = "delete from StuB where 班級編號='" + temp +"'";//要執(zhí)行的SQL語句 SqlCommand cmd = new SqlCommand(sql, conn); try { conn.Open(); int rows = cmd.ExecuteNonQuery();//執(zhí)
22、行命令 if (rows == 1) MessageBox.Show("刪除成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); } catch (SqlException ex) { MessageBox.Show("刪除失敗!" + ex.Message); } conn.Close(); } private v
23、oid dataGridView2_RowHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e) { DataGridViewRow dgvRow = dataGridView2.Rows[e.RowIndex]; DataGridViewCellCollection dgvCC = dgvRow.Cells; temp = dgvCC[0].Value.ToString(); }// dataGridView2的單擊事件,用于獲
24、得選定行的第一個數(shù)據(jù) private void button7_Click(object sender, EventArgs e) { sql = "select * from StuB"; //要執(zhí)行的SQL語句 ds = new DataSet(); da = new SqlDataAdapter(sql, DBHelper.sqlcon); //創(chuàng)建DataAdapter數(shù)據(jù)適配器實例 da.Fill(ds, "StuB");使用DataAdapter的Fill方法(填充),調(diào)用SE
25、LECT命令 dataGridView2.DataSource = new BindingSource(ds, "StuB"); } } } 5、查詢界面主代碼 private void button3_Click(object sender, EventArgs e) { DataSet ds = new DataSet(); SqlConnection con = new SqlConnection("Data Source=李國豪;Initial Catalog=xsgl;Inte
26、grated Security=True"); if (this.textBox7.Text == "" || this.textBox8.Text == "") { MessageBox.Show("必填項不能為空!"); } else { SqlDataAdapter sda = new SqlDataAdapter("select 班級編號,班級名稱,入學時間,學制,專業(yè),班主任,備注 from StuB where 班級編號 = '" + th
27、is.textBox7.Text.Trim() + "'and 班級名稱='" + this.textBox8.Text.Trim() + "'", con); DataTable table = new DataTable(); sda.Fill(table); dataGridView1.DataSource = table; //聲明數(shù)據(jù)集并將查詢結果填充進數(shù)據(jù)集,再將數(shù)據(jù)集中的數(shù)據(jù)填充進控件dataGridView1 textBox7.Clear()
28、; textBox8.Clear(); } } 6、課程設計總結 通過這次課程設計,實現(xiàn)了一個簡單的學生管理系統(tǒng),而我也對C#軟件開發(fā)有了更深一步的認識,也學到了很多在課堂上沒有學到的東西。對于VS2012和SQL2008的使用也更加熟練。系統(tǒng)中存在的一些不足和系統(tǒng)設計上存在的缺憾,說明自己在這些方面還有很多不足之處有待自己進一步學習、提高。 在本次課程設計中,老師朱會東和同學們給了我很大的指導幫助,從他們哪里我學到了很多,在次表示感謝! 7、參考資料 [1] 《SQL Server 2008 數(shù)據(jù)庫及應用》 李偉 著 清華大學出版社 [2] 《C#程序設計及應用教程》李偉 著 清華大學出版社 [3] 網(wǎng)絡資源:
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 6.煤礦安全生產(chǎn)科普知識競賽題含答案
- 2.煤礦爆破工技能鑒定試題含答案
- 3.爆破工培訓考試試題含答案
- 2.煤礦安全監(jiān)察人員模擬考試題庫試卷含答案
- 3.金屬非金屬礦山安全管理人員(地下礦山)安全生產(chǎn)模擬考試題庫試卷含答案
- 4.煤礦特種作業(yè)人員井下電鉗工模擬考試題庫試卷含答案
- 1 煤礦安全生產(chǎn)及管理知識測試題庫及答案
- 2 各種煤礦安全考試試題含答案
- 1 煤礦安全檢查考試題
- 1 井下放炮員練習題含答案
- 2煤礦安全監(jiān)測工種技術比武題庫含解析
- 1 礦山應急救援安全知識競賽試題
- 1 礦井泵工考試練習題含答案
- 2煤礦爆破工考試復習題含答案
- 1 各種煤礦安全考試試題含答案