版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 課 程 設(shè) 計(jì)</b></p><p> 二○一三年六月十一日</p><p><b> 目 錄</b></p><p><b> 摘 要1</b></p><p><b> 第一章 緒 論2</b><
2、/p><p> 1.1 設(shè)計(jì)目的2</p><p> 1.2 開發(fā)工具選擇2</p><p> 1.3 開發(fā)環(huán)境2</p><p> 1.4 本報(bào)告的主要內(nèi)容2</p><p> 第二章 需求分析3</p><p> 2.1系統(tǒng)需求簡介3</p><p&g
3、t; 2.1.1系統(tǒng)目標(biāo)3</p><p> 2.1.2功能需求分析3</p><p> 2.1.3性能需求分析3</p><p> 第三章 總體設(shè)計(jì)4</p><p><b> 3.1設(shè)計(jì)概述4</b></p><p> 3.2系統(tǒng)總體結(jié)構(gòu)及功能模塊劃分4</p&g
4、t;<p> 3.2.1學(xué)生信息查詢模塊4</p><p> 3.2.2學(xué)生信息管理模塊5</p><p> 3.3系統(tǒng)數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計(jì)5</p><p> 3.3.1系統(tǒng)E-R圖5</p><p> 3.4安全保密設(shè)計(jì)6</p><p> 3.4.1用戶登錄安全性6</p
5、><p> 第四章 詳細(xì)設(shè)計(jì)7</p><p><b> 4.1概述7</b></p><p> 4.2系統(tǒng)程序流程圖7</p><p> 4.3系統(tǒng)主要功能模塊簡介8</p><p> 4.3.1系統(tǒng)登錄8</p><p> 4.3.2學(xué)生信息查詢模塊
6、8</p><p> 4.3.3學(xué)生信息管理模塊9</p><p> 第五章 主要功能模塊代碼12</p><p> 5.1 登錄窗口代碼設(shè)計(jì)12</p><p> 5.2 主窗體代碼設(shè)計(jì)13</p><p> 5.3 錄入學(xué)生窗體代碼設(shè)計(jì)15</p><p> 5.4
7、刪除學(xué)生窗體代碼設(shè)計(jì)17</p><p> 5.5 修改學(xué)生窗體代碼設(shè)計(jì)18</p><p> 5.6 查詢學(xué)生窗體代碼設(shè)計(jì)19</p><p> 5.7 數(shù)據(jù)操作層 代碼設(shè)計(jì)20</p><p> 5.8 MODEL(數(shù)據(jù)傳遞)層代碼設(shè)計(jì)25</p><p><b> 第六章 結(jié)論27
8、</b></p><p><b> 致謝28</b></p><p><b> 參考文獻(xiàn)29</b></p><p><b> 摘 要</b></p><p> 本文描述的是基于Windows環(huán)境的學(xué)生信息管理系統(tǒng),主要功能模塊包括:學(xué)生信查詢,學(xué)生信
9、息管理,學(xué)生成績錄入,主要工具M(jìn)icrosoft Visual Studio 2008 設(shè)計(jì)窗體, SQL server2008建立數(shù)據(jù)庫,實(shí)現(xiàn)學(xué)校信息管理的各個功能。</p><p> 本篇報(bào)告介紹一個學(xué)生信息管理系統(tǒng)的從分析到設(shè)計(jì)最后到開發(fā)的全過程為,給出了學(xué)生信息管理系統(tǒng)的設(shè)計(jì)和技術(shù)實(shí)現(xiàn)的過程,特別在細(xì)節(jié)上分析功能和函數(shù)的實(shí)現(xiàn)思想。涉及到學(xué)生信息管理的基本功能在本報(bào)告中都有相應(yīng)的描述。</p>
10、<p> 關(guān)鍵詞 登錄(Formlogin),錄入(Formadd),修改(Formmdf),刪除(Formdelete) ,查詢(Forminquiry)</p><p><b> 緒 論</b></p><p><b> 1.1 設(shè)計(jì)目的</b></p><p> 本課程設(shè)計(jì)的目的是使學(xué)生能熟練
11、掌握簡單的簡單Windows窗體應(yīng)用程序的設(shè)計(jì),希望通過本次課程設(shè)計(jì)鍛煉學(xué)生使用C#語言解決實(shí)際問題的能力。</p><p> 1.2 開發(fā)工具選擇</p><p> 本系統(tǒng)后臺數(shù)據(jù)庫采用Microsoft SQL Server 數(shù)據(jù)庫,該數(shù)據(jù)庫系統(tǒng)在安全性、準(zhǔn)確性和運(yùn)行速度方面有絕對的優(yōu)勢,并且處理數(shù)據(jù)量大,效率高;前臺采用Microsoft 公司的Visual Studio 200
12、8作為主要開發(fā)工具,可與SQL Server 2005數(shù)據(jù)庫無縫鏈接。</p><p><b> 1.3 開發(fā)環(huán)境</b></p><p> 系統(tǒng)開發(fā)平臺:Microsoft Visual Studio2008</p><p><b> 系統(tǒng)開發(fā)語言:C#</b></p><p> 數(shù)據(jù)庫管
13、理軟件:SQL Server 2008</p><p> 1.4 本報(bào)告的主要內(nèi)容</p><p> 本報(bào)告詳細(xì)的介紹了學(xué)生信息管理系統(tǒng)的開發(fā)過程,主要涉及到的工作如下:系統(tǒng)的需求分析、系統(tǒng)的總體設(shè)計(jì)、系統(tǒng)的概念設(shè)計(jì)、系統(tǒng)各模塊的詳細(xì)設(shè)計(jì)、系統(tǒng)運(yùn)行與測試。</p><p><b> 需求分析</b></p><p>
14、;<b> 2.1系統(tǒng)需求簡介</b></p><p><b> 2.1.1系統(tǒng)目標(biāo)</b></p><p> 根據(jù)查詢條件實(shí)現(xiàn)學(xué)生信息的查詢</p><p><b> 學(xué)生選課信息查詢</b></p><p> 學(xué)生信息的增加、刪除、修改</p>&l
15、t;p> 對基本信息完成增加、刪除、修改時(shí),需注意表與表之間的關(guān)聯(lián)</p><p> 2.1.2功能需求分析</p><p> 本系統(tǒng)的功能需求分析如下:</p><p> 學(xué)生信息查詢:學(xué)生可以根據(jù)學(xué)號、姓名.</p><p> 學(xué)生信息管理:主要是用于學(xué)生信息更新、插入、刪除;</p><p>
16、2.1.3性能需求分析</p><p> 登錄、用戶界面需求:簡潔、易懂、易用、友好的用戶界面。</p><p> 安全保密性需求:只有憑借用戶名和密碼登陸系統(tǒng),才能進(jìn)行信息的管理等。</p><p><b> 總體設(shè)計(jì)</b></p><p><b> 3.1設(shè)計(jì)概述</b></p&
17、gt;<p> 根據(jù)需求把整個系統(tǒng)分化成不同的模塊,每個模塊完成一個特定的子功能。把這些模塊結(jié)合起來組成一個整體。逐一實(shí)現(xiàn)各個功能;</p><p> 3.2系統(tǒng)總體結(jié)構(gòu)及功能模塊劃分</p><p> 經(jīng)過對系統(tǒng)的需求分析,學(xué)生信息管理系統(tǒng)主要劃分為三個部分:學(xué)生信息查詢,學(xué)生信息管理,學(xué)生成績錄入三個功能模塊。如圖3.2.1 系統(tǒng)的總體結(jié)構(gòu)。</p>
18、<p> 圖3.2.1 系統(tǒng)的總體結(jié)構(gòu)</p><p> 3.2.1學(xué)生信息查詢模塊</p><p> 學(xué)生信息查詢:學(xué)生可以根據(jù)學(xué)號、姓名、專業(yè)進(jìn)行查詢。如圖3.2.2學(xué)生信息查詢模塊結(jié)構(gòu)。</p><p> 圖3.2.2 學(xué)生信息管理模塊結(jié)構(gòu)</p><p> 3.2.2學(xué)生信息管理模塊</p>&l
19、t;p> 學(xué)生信息管理:主要是用于學(xué)生信息更新、插入、刪除,如圖3.2.3學(xué)生管理模塊結(jié)構(gòu)。</p><p> 圖3.2.3 學(xué)生信息管理模塊結(jié)構(gòu)</p><p> 3.3系統(tǒng)數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計(jì)</p><p> 根據(jù)對數(shù)據(jù)項(xiàng)與數(shù)據(jù)結(jié)構(gòu)的分析,設(shè)計(jì)出能夠滿足系統(tǒng)需求的各種實(shí)體,及它們之間的關(guān)系,為后面的邏輯結(jié)構(gòu)設(shè)計(jì)打下基礎(chǔ)。</p>&l
20、t;p> 3.3.1系統(tǒng)E-R圖</p><p> 系統(tǒng)E-R圖可以將各個實(shí)體之間的關(guān)系顯示出來,將各個實(shí)體間的屬性依賴表示明白。如圖3.3.1系統(tǒng)E-R圖結(jié)構(gòu)。</p><p> 圖3.3.1系統(tǒng)E-R圖結(jié)構(gòu)</p><p><b> 3.4安全保密設(shè)計(jì)</b></p><p> 3.4.1用戶登錄安全
21、性</p><p> 系統(tǒng)設(shè)計(jì)了登錄界面,每個合法用戶有用戶名及一個密碼,只有當(dāng)用戶輸入正確的用戶名及密碼組合后才能夠?qū)W(xué)生信息進(jìn)行操作。</p><p><b> 詳細(xì)設(shè)計(jì)</b></p><p><b> 4.1概述</b></p><p> 詳細(xì)設(shè)計(jì)階段的根本目標(biāo)是確定應(yīng)該怎樣具體的實(shí)
22、現(xiàn)所要求的系統(tǒng),也就是說,經(jīng)過這個階段的設(shè)計(jì)工作,應(yīng)該得出目標(biāo)系統(tǒng)的精確描述,從而在編碼階段可以把這個描述直接翻譯成用某種程序設(shè)計(jì)語言書寫的程序。</p><p> 4.2系統(tǒng)程序流程圖</p><p> 程序流程圖又稱為程序框圖,它是歷史悠久使用最廣泛的描述軟件設(shè)計(jì)的方法。它可將整個程序的總體流程清楚明白的顯示出來。如圖4.2.1系統(tǒng)總流程圖結(jié)構(gòu)。</p><p&
23、gt; 圖4.2.1系統(tǒng)總體流程圖</p><p> 4.3系統(tǒng)主要功能模塊簡介</p><p><b> 4.3.1系統(tǒng)登錄</b></p><p> 用戶憑借用戶名及密碼登錄,成功登錄后可對學(xué)生信息進(jìn)行操作。用戶界面如圖4.3.1 用戶登錄界面所示。</p><p> 圖4.3.1 用戶登錄界面</p
24、><p> 4.3.2學(xué)生信息查詢模塊</p><p> 學(xué)生信息查詢:在程序主界面(如圖4.3.2 程序主界面)學(xué)生可以根據(jù)學(xué)號、姓名進(jìn)行查詢。學(xué)生也可以只用一種條件進(jìn)行信息查詢,也可以多個條件查詢。</p><p> 圖4.3.2 程序主界面</p><p> 4.3.3學(xué)生信息管理模塊</p><p>
25、學(xué)生信息管理:通過右擊程序主界面的相應(yīng)記錄彈出的上下文菜單可對當(dāng)前選定學(xué)生信息進(jìn)行詳細(xì)信息查詢(如圖4.3.3 詳細(xì)信息窗口)、修改信息(如圖4.3.4 修改信息窗口)、刪除信息(如圖 4.3.5 刪除信息提示)。更新時(shí)如果輸入的學(xué)號不存在,可選擇是否添加學(xué)生信息。通過程序主界面的新建信息記錄可添加學(xué)生信息(如圖 4.3.6 添加信息窗口)。</p><p> 圖4.3.3 信息查詢</p>&l
26、t;p> 圖4.3.4 修改信息窗口</p><p> 圖4.3.5 刪除信息提示</p><p> 圖4.3.6 添加信息窗口</p><p><b> 主要功能模塊代碼</b></p><p> 5.1 登錄窗口代碼設(shè)計(jì)</p><p> private void btnl
27、ogin_Click(object sender, EventArgs e)</p><p> { UserInformation user = new UserInformation(txtboxusername.Text.Trim(), txtboxpassword.Text.Trim());</p><p> int count = DAL.Dal.getUs
28、erInformation(user);</p><p> if (count == 1)</p><p><b> {</b></p><p> common.username = txtboxusername.Text;</p><p> new Formmain().Show();</p>&
29、lt;p> this.Hide();</p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p> MessageBox.Show("錯誤的用戶名或密碼!");<
30、;/p><p> txtboxusername.Text = "";//清空</p><p> txtboxpassword.Text = "";</p><p> txtboxusername.Focus();//獲取焦點(diǎn)</p><p><b> }</b></p&g
31、t;<p><b> }</b></p><p> private void btncancel_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> Application.Exit();</p><p>
32、<b> }</b></p><p> 5.2 主窗體代碼設(shè)計(jì)</p><p> BindingSource bs = new BindingSource();</p><p> private void Formmain_FormClosed(object sender, FormClosedEventArgs e)</p>
33、;<p><b> {</b></p><p> Application.Exit();</p><p><b> }</b></p><p> private void btnfirst_Click(object sender, EventArgs e)</p><p>&l
34、t;b> {</b></p><p> bs.MoveFirst();</p><p><b> }</b></p><p> private void btnlast_Click(object sender, EventArgs e)</p><p><b> {</b>
35、;</p><p> bs.MoveLast();</p><p><b> }</b></p><p> private void btnprevious_Click(object sender, EventArgs e)</p><p><b> {</b></p><
36、;p> bs.MovePrevious();</p><p><b> }</b></p><p> private void btnnext_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> bs.MoveN
37、ext();</p><p><b> }</b></p><p> private void Formmain_Load(object sender, EventArgs e)</p><p><b> {</b></p><p> mybinding(); </p><
38、;p><b> }</b></p><p> public void mybinding()//刷新網(wǎng)格</p><p><b> {</b></p><p> bs.DataSource = DAL.Dal.returnTable();</p><p> dgv.DataSourc
39、e = bs;</p><p> lbltip.Text = common.username;</p><p><b> }</b></p><p> private void 插入學(xué)生信息ToolStripMenuItem_Click(object sender, EventArgs e)</p><p><
40、;b> {</b></p><p> if (new Formadd().ShowDialog() == DialogResult.OK)</p><p><b> {</b></p><p> mybinding();</p><p><b> }</b></p&
41、gt;<p><b> }</b></p><p> private void 刪除學(xué)生信息ToolStripMenuItem_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> if (new Formdelete().Show
42、Dialog() == DialogResult.OK)</p><p><b> {</b></p><p> mybinding();</p><p><b> }</b></p><p><b> }</b></p><p> priva
43、te void 查詢學(xué)生信息ToolStripMenuItem_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> if (new Forminquiry().ShowDialog() == DialogResult.OK)</p><p><b> {&l
44、t;/b></p><p> mybinding();</p><p><b> }</b></p><p><b> }</b></p><p> private void 修改學(xué)生信息ToolStripMenuItem_Click(object sender, EventArgs
45、e)</p><p><b> {</b></p><p> if (new Formmdf().ShowDialog() == DialogResult.OK)</p><p><b> {</b></p><p> mybinding();</p><p><
46、;b> }</b></p><p><b> }</b></p><p> private void 退出ToolStripMenuItem_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> App
47、lication.Exit();</p><p><b> }</b></p><p> private void 注銷ToolStripMenuItem_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> this.H
48、ide();</p><p> new Formlogin().Show();</p><p><b> }</b></p><p> 5.3 錄入學(xué)生窗體代碼設(shè)計(jì)</p><p> private void btninsert_Click(object sender, EventArgs e)</p>
49、;<p><b> {</b></p><p> if(txtboxsno.Text =="")</p><p><b> {</b></p><p> MessageBox.Show("學(xué)號不能為空");</p><p> txtbo
50、xsno.Focus();</p><p><b> return;</b></p><p><b> }</b></p><p> if(txtboxsname.Text=="")</p><p><b> {</b></p><
51、;p> MessageBox.Show("姓名不能為空");</p><p> txtboxsno.Focus();</p><p><b> return;</b></p><p><b> }</b></p><p> string sno = txtboxs
52、no.Text.Trim();</p><p> string sname = txtboxsname.Text.Trim();</p><p> string sex = cmbboxsex.Text.Trim();</p><p> string day = txtboxsbirthday.Text.Trim();</p><p>
53、 StudentInformation student = new StudentInformation(sno,sname,sex,day);</p><p> DAL.StudentDAO.inserStudent(student);</p><p> txtboxsno.Text = "";</p><p> txtboxsname
54、.Text = "";</p><p> txtboxsbirthday.Text = "";</p><p> txtboxsno.Focus();</p><p><b> }</b></p><p> private void Formadd_FormClosed(o
55、bject sender, FormClosedEventArgs e)</p><p><b> {</b></p><p> this.DialogResult = DialogResult.OK;</p><p><b> }</b></p><p> private void btn
56、cancel_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> this.Close(); </p><p><b> }</b></p><p> 5.4 刪除學(xué)生窗體代碼設(shè)計(jì)</p><p>
57、; private void button1_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> if (txtboxsno.Text == "")</p><p><b> {</b></p><p&g
58、t; MessageBox.Show("請輸入要刪除的學(xué)生的學(xué)號:");</p><p> txtboxsno.Focus();</p><p><b> return;</b></p><p><b> }</b></p><p><b> else <
59、;/b></p><p><b> {</b></p><p><b> }</b></p><p> DAL.StudentDAO.deleteStudent(txtboxsno.Text.Trim());</p><p> MessageBox.Show("刪除完畢&qu
60、ot;);</p><p> txtboxsno.Text = "";</p><p> txtboxsno.Focus();</p><p><b> }</b></p><p> private void button2_Click(object sender, EventArgs e)&
61、lt;/p><p><b> {</b></p><p> DialogResult dr = MessageBox.Show("請確認(rèn)是否真的要清空學(xué)生數(shù)據(jù)庫", "警告", MessageBoxButtons.OKCancel, MessageBoxIcon.Information);</p><p>
62、; if (dr == DialogResult.OK)</p><p><b> {</b></p><p> DAL.StudentDAO.clear();</p><p><b> }</b></p><p><b> else</b></p>&
63、lt;p><b> {</b></p><p> //不清空,什么都不做</p><p><b> }</b></p><p><b> }</b></p><p> private void Formdelete_FormClosed(object sende
64、r, FormClosedEventArgs e)</p><p><b> {</b></p><p> this.DialogResult = DialogResult.OK;</p><p><b> }</b></p><p> 5.5 修改學(xué)生窗體代碼設(shè)計(jì)</p>&
65、lt;p> private void button1_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> if (txtboxsno.Text == "")</p><p><b> {</b></p>
66、<p> MessageBox.Show("請輸入要修改的學(xué)生的學(xué)號:");</p><p> txtboxsno.Focus();</p><p><b> return;</b></p><p><b> }</b></p><p> if (txtbox
67、sname.Text == "")</p><p><b> {</b></p><p> MessageBox.Show("請輸入要修改的學(xué)生的姓名:");</p><p> txtboxsname.Focus();</p><p><b> return;&l
68、t;/b></p><p> } if (cmbboxsex.Text == "")</p><p><b> {</b></p><p> MessageBox.Show("請輸入要刪除的學(xué)生的性別:");</p><p> cmbboxsex.Focus();&l
69、t;/p><p><b> return;</b></p><p><b> }</b></p><p> if (txtboxsbirthday.Text == "")</p><p><b> {</b></p><p>
70、MessageBox.Show("請輸入要刪除的學(xué)生的生日:");</p><p> txtboxsbirthday.Focus();</p><p><b> return;</b></p><p><b> }</b></p><p> string sno = tx
71、tboxsno.Text.Trim();</p><p> string sname = txtboxsname.Text.Trim();</p><p> string sex = cmbboxsex.Text.Trim();</p><p> string sbirthday = txtboxsbirthday.Text.Trim();</p>
72、<p> StudentInformation student = new StudentInformation(sno, sname, sex, sbirthday);</p><p> DAL.StudentDAO.modify(student);</p><p> MessageBox.Show("修改成功!", "提示")
73、;</p><p> txtboxsno.Text = "";</p><p> txtboxsname.Text = "";</p><p> txtboxsbirthday.Text = "";</p><p> txtboxsno.Focus();</p>
74、<p><b> }</b></p><p> private void button2_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> this.Close();</p><p><b>
75、}</b></p><p> private void Formmdf_FormClosed(object sender, FormClosedEventArgs e)</p><p><b> {</b></p><p> this.DialogResult = DialogResult.OK;</p><
76、;p><b> }</b></p><p> 5.6 查詢學(xué)生窗體代碼設(shè)計(jì)</p><p> BindingSource bs = new BindingSource();</p><p> private void Forminquiry_Load(object sender, EventArgs e)</p>&
77、lt;p><b> {</b></p><p><b> }</b></p><p> private void btninquiry_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> i
78、f (txtboxsno.Text == "")</p><p><b> {</b></p><p> MessageBox.Show("請輸入要查找學(xué)生的學(xué)號:");</p><p> txtboxsno.Focus();</p><p><b> retur
79、n;</b></p><p><b> }</b></p><p> bs.DataSource = DAL.StudentDAO.returnTable1(txtboxsno.Text.Trim());</p><p> dgv.DataSource = bs;</p><p><b>
80、}</b></p><p> private void Forminquiry_FormClosed(object sender, FormClosedEventArgs e)</p><p><b> {</b></p><p> this.DialogResult = DialogResult.OK;</p>
81、<p><b> }</b></p><p> private void btncancel_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> this.Close(); </p><p><b>
82、; }</b></p><p> 5.7 數(shù)據(jù)操作層 代碼設(shè)計(jì)</p><p> public class StudentDAO</p><p><b> {</b></p><p> public static void inserStudent(StudentInformation studen
83、t)</p><p><b> {</b></p><p> string strsql = "insert into student values(@sno,@sname,@sex,@birthday)";</p><p> SqlParameter[] para = new SqlParameter[] { <
84、;/p><p> new SqlParameter("@sno",SqlDbType.NVarChar),</p><p> new SqlParameter("@sname",SqlDbType.NVarChar),</p><p> new SqlParameter("@sex",SqlDbType.
85、NVarChar),</p><p> new SqlParameter("@birthday",SqlDbType.NVarChar)</p><p><b> };</b></p><p> int i = 0;</p><p> para[i++].Value = student.get
86、Sno();</p><p> para[i++].Value = student.getSname();</p><p> para[i++].Value = student.getSex();</p><p> para[i++].Value = student.getBirthday();</p><p> Dal.Execut
87、eNonQuery(strsql, para);</p><p><b> }</b></p><p> public static void deleteStudent(string studentno)</p><p><b> {</b></p><p> string strsql
88、= "delete from student where sno=@no";</p><p> SqlParameter[] para = new SqlParameter[]{</p><p> new SqlParameter("@no",SqlDbType.NVarChar)</p><p><b> }
89、;</b></p><p> para[0].Value = studentno;</p><p> Dal.ExecuteNonQuery(strsql, para);</p><p><b> }</b></p><p> public static void clear()</p>
90、<p><b> {</b></p><p> string strsql = "delete from student";</p><p> SqlParameter[] para = new SqlParameter[] { };</p><p> Dal.ExecuteNonQuery(strsql
91、, para);</p><p><b> }</b></p><p> public static DataTable returnTable1(string sno)</p><p><b> {</b></p><p> DataTable table = new DataTable(
92、);</p><p> string connstr = @"server= .;database=student;integrated security=sspi";</p><p> using (SqlConnection conn = new SqlConnection(connstr))</p><p><b> {&l
93、t;/b></p><p> conn.Open();</p><p> using (SqlCommand cmd = conn.CreateCommand())</p><p><b> {</b></p><p> cmd.CommandText = "select * from stude
94、nt where sno=@sno";</p><p> cmd.Parameters.Add(new SqlParameter("sno", @sno));</p><p> SqlDataAdapter adapter = new SqlDataAdapter(cmd);</p><p> adapter.Fill(table
95、);</p><p> return table;</p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p> public static void modify(Stud
96、entInformation student)</p><p><b> {</b></p><p> string sql = "update student set sname=@sname where sno=@sno update student set ssex=@sex where sno=@sno update student set sb
97、irthday=@birthday where sno=@sno";</p><p> SqlParameter[] para = new SqlParameter[]</p><p><b> {</b></p><p> new SqlParameter ("sno",SqlDbType .NChar),
98、</p><p> new SqlParameter ("sname",SqlDbType .NVarChar ),</p><p> new SqlParameter ("sex",SqlDbType .NChar ),</p><p> new SqlParameter ("birthday",S
99、qlDbType .NChar )</p><p><b> };</b></p><p> int i = 0;</p><p> para[i++].Value = student.getSno();</p><p> para[i++].Value = student.getSname();</p&g
100、t;<p> para[i++].Value = student.getSex();</p><p> para[i++].Value = student.getBirthday();</p><p> Dal.ExecuteNonQuery(sql, para);</p><p><b> }</b></p>
101、<p><b> }</b></p><p> public class Dal</p><p><b> {</b></p><p> public static int getUserInformation(UserInformation user)</p><p><
102、;b> {</b></p><p> string connstr = @"server=.;database=student;integrated security=sspi";</p><p> using (SqlConnection conn = new SqlConnection(connstr))</p><p&g
103、t;<b> {</b></p><p> conn.Open();</p><p> using (SqlCommand cmd = conn.CreateCommand())</p><p><b> {</b></p><p> cmd.CommandText = "sel
104、ect count(*) from userlogin where username=@name and password=@pwd";</p><p> cmd.Parameters.Add(new SqlParameter("@name", user.getUserName()));</p><p> cmd.Parameters.Add(new Sq
105、lParameter("@pwd", user.getPassword()));</p><p> int count = Convert.ToInt32(cmd.ExecuteScalar());//返回第一行第一列的值,不確定的值object</p><p> return count;</p><p><b> }</
106、b></p><p><b> }</b></p><p><b> }</b></p><p> public static DataTable returnTable()</p><p><b> {</b></p><p> str
107、ing connstr = @"server=.;database=student;integrated security=sspi";</p><p> string sql = "select * from student";</p><p> using (SqlConnection conn = new SqlConnection(con
108、nstr))//連接數(shù)據(jù)庫的字符串</p><p><b> {</b></p><p> conn.Open();//打開對數(shù)據(jù)庫的連接</p><p> using (SqlDataAdapter adapter = new SqlDataAdapter(sql, connstr))</p><p><b
109、> {</b></p><p> //數(shù)據(jù)的適配器,負(fù)責(zé)填充數(shù)據(jù)</p><p> DataTable table = new DataTable();</p><p> adapter.Fill(table);</p><p> return table;</p><p><b>
110、; }</b></p><p><b> }</b></p><p><b> }</b></p><p> public static void ExecuteNonQuery(string strsql, params SqlParameter[] para)</p><p>
111、;<b> {</b></p><p> string connstr = @"server=.;database=student;integrated security=sspi";</p><p> using (SqlConnection conn = new SqlConnection(connstr))</p><
112、;p><b> {</b></p><p> conn.Open();</p><p> using (SqlCommand cmd = conn.CreateCommand())</p><p><b> {</b></p><p> cmd.CommandText = strsq
113、l;</p><p> cmd.Parameters.AddRange(para);</p><p> cmd.ExecuteNonQuery();</p><p><b> }</b></p><p><b> }</b></p><p><b> }&
114、lt;/b></p><p><b> }</b></p><p> 5.8 MODEL(數(shù)據(jù)傳遞)層代碼設(shè)計(jì)</p><p> public class StudentInformation</p><p><b> {</b></p><p> priva
115、te string sno;</p><p> private string sname;</p><p> private string sex;</p><p> private string birthday;</p><p> public StudentInformation(string sno,string sname
116、,string sex,string birthday) </p><p><b> {</b></p><p> this.sno = sno;</p><p> this.sname = sname;</p><p> this.sex = sex;</p><p> this.bi
117、rthday = birthday;</p><p><b> }</b></p><p> public string getSno() { return sno; }</p><p> public string getSname() { return sname; }</p><p> public str
118、ing getSex() { return sex; }</p><p> public string getBirthday() { return birthday; }</p><p><b> }</b></p><p> public class UserInformation</p><p><b&
119、gt; {</b></p><p> private string username;</p><p> private string password;</p><p> public UserInformation(string username, string password)</p><p><b>
120、 {</b></p><p> this.username = username;</p><p> this.password = password;</p><p><b> }</b></p><p> public string getUserName() { return username;
121、 }</p><p> public string getPassword() { return password; }</p><p><b> 第六章 結(jié)論</b></p><p> 課程設(shè)計(jì)結(jié)束了,在老師和同學(xué)的幫助下,我基本完成系統(tǒng)的設(shè)計(jì)。我按照系統(tǒng)工程軟件設(shè)計(jì)的要求,從需求分析,概念設(shè)計(jì),總體設(shè)計(jì),詳細(xì)設(shè)計(jì),系統(tǒng)測試等各個步驟,
122、分步完成系統(tǒng)的各項(xiàng)任務(wù),實(shí)現(xiàn)了系統(tǒng)中的學(xué)生信息查詢,學(xué)生信息更新,學(xué)生信息添加等模塊的功能。</p><p> 通過課程設(shè)計(jì)我收獲如下:</p><p> 1、鞏固和加深了對C#的理解,提高綜合運(yùn)用本課程所學(xué)知識的能力。</p><p> 2、培養(yǎng)了我選用參考書,查閱手冊及文獻(xiàn)資料的能力。培養(yǎng)獨(dú)立思考,深入研究,分析問題、解決問題的能力。</p>
123、<p> 3、通過實(shí)際編譯系統(tǒng)的分析設(shè)計(jì)、編程調(diào)試,掌握應(yīng)用軟件的分析方法和工程設(shè)計(jì)方法。</p><p> 根據(jù)我在課程設(shè)計(jì)中遇到的問題,我將在以后的學(xué)習(xí)當(dāng)中注意以下幾點(diǎn):</p><p> 1、認(rèn)真上好專業(yè)實(shí)驗(yàn)課,多在實(shí)踐中鍛煉自己。</p><p> 2、寫程序的過程中要考慮周到,嚴(yán)密。</p><p> 3、在做
124、設(shè)計(jì)的時(shí)候要有信心,有耐心,切勿浮躁。</p><p> 4、認(rèn)真的學(xué)習(xí)課本知識,掌握課本中的知識點(diǎn),并在此基礎(chǔ)上學(xué)會靈活運(yùn)用。</p><p> 5、在課余時(shí)間里多寫程序,熟練掌握在調(diào)試程序的過程中所遇到的常見錯誤,以便能節(jié)省調(diào)試程序的時(shí)間。</p><p><b> 致謝</b></p><p> 這次課程設(shè)
125、計(jì)主要感謝我們的指導(dǎo)老師。在這個項(xiàng)目剛剛確定下來,我們一頭霧水,不知如何開發(fā)。因此前期的制作,主要是老師和我們一起開發(fā)并且給我們講解。在老師的引導(dǎo)下,我們逐步完成了整個項(xiàng)目的研發(fā)。在這里我們感謝指導(dǎo)老師。</p><p><b> 參考文獻(xiàn)</b></p><p> [1]《數(shù)據(jù)庫系統(tǒng)原理與設(shè)計(jì)》 清華大學(xué)出版社 萬長選、廖國瓊、吳京慧、劉洗平</p>
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- 課程設(shè)計(jì)報(bào)告-學(xué)生成績管理系統(tǒng)
- 學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- 學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- 課程設(shè)計(jì)報(bào)告--學(xué)生成績管理系統(tǒng)
- 課程設(shè)計(jì)報(bào)告---學(xué)生成績管理系統(tǒng)
- 學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- 學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- 學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- 《學(xué)生成績管理系統(tǒng)》課程設(shè)計(jì)報(bào)告
- vb學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- java課程設(shè)計(jì)報(bào)告---學(xué)生成績管理系統(tǒng)
- 學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)報(bào)告 (2)
- java學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- java學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- 學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)報(bào)告 (3)
- c課程設(shè)計(jì)報(bào)告--學(xué)生成績管理系統(tǒng)
- java學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- 學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)報(bào)告.doc
- vfp課程設(shè)計(jì)報(bào)告---學(xué)生成績管理系統(tǒng)
評論
0/150
提交評論